本文へ移動
cccskills
無料GitHub で公開

td-feature-design

Design a tdmcp feature into an implementable spec before any code is written — choose the layer, define the Zod input schema, lay out the TD network topology, plan the bridge/Python approach, sketch a UI wireframe when relevant, and list probe-first risks + the test plan. Use whenever a tdmcp feature idea needs a design/wireframe/spec, or when someone asks to plan/scope/architect a new tool, generator, effect, control, or AI prompt for the TouchDesigner MCP server.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md4.0 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

td-feature-design — turn an idea into an implementable spec

A spec is good when a builder can implement it in one file + one test without re-deciding anything. Aim for that bar.

Procedure

  1. Read the context first. docs/ROADMAP.md (the idea is usually already scoped there), AGENTS.md (the conventions), and 1–2 neighbour tools in the target src/tools/layer*/ for the exact file pattern.
  2. Pick the layer / altitude:
    • Layer 1 (src/tools/layer1/) — an artist tool that builds a whole wired+arranged network (goes through orchestration.ts).
    • Layer 2 (src/tools/layer2/) — a building block (connect, control panel, animate, external IO).
    • Layer 3 (src/tools/layer3/) — atomic node CRUD / inspection / raw-Python escape hatch.
    • src/tools/vault/ — Obsidian-vault bridge. A src/prompts/ entry — when the value is guidance to the model, not a deterministic build (multimodal / natural-language / critique ship as prompts).
    • Decide the file path now: src/tools/layer<N>/<camelCaseName>.ts.
  3. Design the Zod input schema — a param table: name, type, default, enum values, notes. Defaults matter: device-sourced inputs (camera/audio) default to a synthetic/file source (live device is opt-in) because device capture can hang TD on a macOS permission modal.
  4. Lay out the TD network topology — the operators it creates, how they wire, and the live controls it exposes. Reactive features must end on a Null CHOP ready for bind_to_channel, reusing the shipped binding path instead of inventing one. Verify every operator type against the KB (tdmcp://operators/… or search_operators) — never invent a type.
  5. Plan the bridge approach — almost always a Python payload via buildPayloadScript (__PAYLOAD_B64__) executed through the client and parsed with parsePythonReport. Propose a new REST endpoint only when streaming or performance genuinely demands it.
  6. Sketch a UI wireframe when the feature has a surface (control panel / control surface / phone remote / web dashboard / chat UI): an ASCII layout or component list naming each control and what parameter it drives.
  7. List probe-first risks — anything to validate live before locking the API: platform-specific operators (Syphon/Spout/NDI/Video-Stream-Out exist only on some OS/licenses), KB-missing operators (the KB lags ~14 recent ops; ~22 dir(td) names aren't createable), device permissions, and time-dependent chains that read 0 on a paused timeline.
  8. Write the test plan — what the offline msw unit test should assert (operators created, params set, wiring, the returned shape).
  9. Write integration notes — exactly which shared files the integrator must edit (layer*/index.ts, src/cli/agent.ts command name + flags, docs regenerate automatically).

Output

One file per feature at _workspace/01_design_<feature>.md with these sections in order: Summary · Layer + target path · Input schema (param table) · Network topology · Bridge/Python approach · UI wireframe (if any) · Probe-first risks · Test plan · Integration notes.

Anti-patterns

  • Don't design a feature that needs the builder to edit shared files — that's the integrator's job; note it instead.
  • Don't specify operators you haven't confirmed exist; mark them UNVERIFIED — probe live.
  • Don't rebuild a shipped primitive (binding, tempo clock, preset/cue engine) — wire into it.
  • Don't over-specify defensive params for states that can't occur; match the feature's real surface.

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Use when manage multiple local CLI agents via tmux sessions (start/stop/monitor/assign) with cron-friendly scheduling.

日本語の概要は準備中です。原文の説明を表示しています。

hybridlabor-api/aos62026年10月12日 更新

Use when a hybrid memory system that provides persistent, searchable knowledge management for AI agents (Architecture, Patterns, Decisions).

日本語の概要は準備中です。原文の説明を表示しています。

hybridlabor-api/aos62026年10月12日 更新

Reference for how BDB structures autonomous software engineering work — the seven-node dispatcher graph (Architect, TechLead, UI/UX, Engineering, Media/EventTech, Reviewer, Shipping) that /startcycle-graph actually runs. Use when you need the high-level lifecycle framing without inventing your own process.

日本語の概要は準備中です。原文の説明を表示しています。

hybridlabor-api/aos62026年10月12日 更新

Tools are how AI agents interact with the world. A well-designed tool is the difference between an agent that works and one that hallucinates, fails silently, or costs 10x more tokens than necessary. This skill covers tool design from schema to error handling.

日本語の概要は準備中です。原文の説明を表示しています。

hybridlabor-api/aos62026年10月12日 更新

Harness patterns for coding agents — memory, permissions, context engineering, delegation, skills, hooks, bootstrap.

日本語の概要は準備中です。原文の説明を表示しています。

hybridlabor-api/aos62026年10月12日 更新

agenttrail: live map of a multi-agent build in the browser: which plan component is being worked on, by which agent or harness, what is done and what is stuck. Use when a multi-agent pipeline starts (/startcycle, /startcycle-graph, /teamwork-preview) or after a plan-canvas approve, when the user asks to see what the agents are doing ("live map", "build board", "who is running now"), or by yourself whenever a multi-agent run is under way — no user prompt needed.

日本語の概要は準備中です。原文の説明を表示しています。

hybridlabor-api/aos62026年10月12日 更新

hybridlabor-api のスキルをすべて見る

このスキルの問題を報告する