diy-pc-ingestIngest pasted PC parts purchase/config text (Discord message receipts, bullet lists) into Notion DIY_PC tables (PCConfig, ストレージ, エンクロージャー, PCInput). Use when...
Install via ClawdBot CLI:
clawdbot install NEXTAltair/diy-pc-ingestThis skill is intended to be shared. Do not hardcode your Notion IDs or token in the skill.
1) Copy the example config:
skills/diy-pc-ingest/references/config.example.json → ~/.config/diy-pc-ingest/config.jsonDIY_PC_INGEST_BOOTSTRAP=1.2) Fill in your Notion targets (IDs):
notion.targets.*.data_source_id (for schema/query)notion.targets.*.database_id (for creating pages)3) Provide Notion auth for notion-api-automation (notionctl):
NOTION_API_KEY (recommended)~/.config/notion/api_keyNotes:
2025-09-03 by default.references/config.example.json.web_search/web_fetch may send partial product text to external web providers.notion-api-automation/scripts/notionctl.mjs.~/.config/diy-pc-ingest/config.json is read; write occurs only when bootstrap is explicitly enabled.Security rules:
web_search/web_fetch and proceed with local extraction only.Use data_sources endpoints for schema/query, and pages endpoint for row creation.
(IDs are intentionally not included in this public skill. They live in your local config.)
1) Read the pasted text and decide target table per item:
2) Extract fields (best-effort). Prefer Japanese column names as they exist in each table.
3) Enrich specs using web_search/web_fetch when it reduces user work (e.g., bay count, interface, capacity, form factor). Keep it minimal; don't overfill.
4) Ask follow-up questions only for fields needed to avoid ambiguity or bad joins.
5) Search existing records in Notion using scripts/notion_apply_records.js (auto-discovery mode):
6) Review search results and confirm with user:
7) Upsert into Notion using scripts/notion_apply_records.js:
overwrite=true8) Report results (created/updated/skipped) and link any created rows.
3
シリアル (exact) is the primary key. If the existing row was created without serial, allow a safe fallback match by title + (optional) 購入日/価格(円) to support post-fill of serial/health/scan-date.取り外し表示名 (exact) else title/name.(Name + Purchase Date) を複合キーとして扱う(exact)。重複ヒット時は書き込まず質問。Each line is a JSON object:
{"target":"enclosure","title":"RATOC RS-EC32-R5G","properties":{"種別":"USBケース","接続":"USB","ベイ数":2,"普段つないでるPC":"RECRYZEN","購入日":"2026-01-18","購入店":"PCワンズ","価格(円)":8977,"取り外し表示名":"RS-EC32-R5G","メモ":"JAN: 4949090752191"}}
Optional control fields (for cleanup / manual fixes):
page_id (or id): update this Notion page directly (bypasses upsert matching)archive: true: archive the page (useful for de-dup)overwrite: true: allow overwriting existing values (including clearing with null)Optional behavior flags:
mirror_to_pcconfig: true (only for target=storage): also create/update a pcconfig row for the installed component.現在の接続先PC, 購入日, NameTargets: enclosure | storage | pcconfig | pcinput
Property value encoding:
YYYY-MM-DD2025-09-03.POST /v1/data_sources/{id}/query over /databases/{id}/query.relation.data_source_id (not database_id).scripts/notion_apply_records.jsscripts/_deprecated/notion_apply_records.pynotion-api-automation via ClawHub for Notion API debugging: clawhub install notion-api-automationskills/notionkit/*.scripts/notion_apply_records.js; use skills/notion-api-automation/scripts/notionctl.mjs for diagnostics/manual API operations.Generated Mar 1, 2026
A PC builder pastes Discord purchase receipts and spec lists to automatically populate their Notion database of components. The AI classifies parts into appropriate tables (PCConfig, storage, enclosures), enriches missing specs via web search, and maintains an organized inventory with purchase dates and prices for future builds and warranty tracking.
An IT administrator ingests bulk purchase orders and configuration notes for company workstations and servers into Notion. The system categorizes components, asks follow-up questions for missing serial numbers, and creates a searchable asset database with enrichment from manufacturer websites for accurate specifications.
A repair technician pastes client PC specifications and replacement part receipts to document service history. The AI identifies components, queries existing records to avoid duplicates, and updates Notion with new installations while linking storage devices to their host PCs for complete service records.
A video production studio inputs purchase logs for capture cards, storage arrays, and PC components used in editing workstations. The skill organizes equipment by type, enriches interface details (Thunderbolt/USB), and maintains a relational database showing which storage drives are installed in which enclosures and PCs.
A reseller pastes supplier lists and customer configuration requests to manage inventory and build logs. The system classifies items, uses web search to fill in missing bay counts or form factors, and upserts into Notion with purchase dates and prices for sales tracking and component matching.
Offer a free tier for individual users to manage personal builds with limited Notion databases, and a paid subscription for teams with advanced features like bulk import, API access, and priority support. Revenue comes from monthly subscriptions and enterprise licenses for larger organizations.
Sell customized deployments to IT departments and repair chains, integrating with existing procurement systems and providing analytics dashboards. Revenue is generated through one-time setup fees, annual licensing, and ongoing maintenance contracts for updates and support.
Partner with PC part retailers and marketplaces to offer automated inventory syncing from sales platforms to Notion. Charge per transaction or monthly fee for sellers to keep their component databases updated with purchase data and enriched specifications from web sources.
💬 Integration Tip
Ensure Notion API keys have minimal permissions (only target databases) and use local config files to avoid hardcoding sensitive IDs; test with the preview mode before upserting to prevent accidental data writes.
iMessage/SMS CLI for listing chats, history, watch, and sending.
Use when you need to control Discord from Clawdbot via the discord tool: send messages, react, post or upload stickers, upload emojis, run polls, manage threads/pins/search, fetch permissions or member/role/channel info, or handle moderation actions in Discord DMs or channels.
Use when you need to control Slack from Clawdbot via the slack tool, including reacting to messages or pinning/unpinning items in Slack channels or DMs.
Send WhatsApp messages to other people or search/sync WhatsApp history via the wacli CLI (not for normal user chats).
Build or update the BlueBubbles external channel plugin for Clawdbot (extension package, REST send/probe, webhook inbound).
OpenClaw skill for designing Telegram Bot API workflows and command-driven conversations using direct HTTPS requests (no SDKs).