跳到正文
cccskills
免费在 GitHub 公开

execute-one

Reactant router — read a document, interpret its annotations in context, and execute only the first actionable <@skill> tag. Use when the user wants to step through Reactant tags one at a time.

中文简介正在准备中。当前显示原文说明。

a554b554/Reactant星标 54(GitHub 54 + cccskills 0)

实测评分 未实测

查看安装方法

包含的文件(1)

  • SKILL.md8.1 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Execute One

Execute exactly one Reactant annotation: the first actionable tag in source order. The host agent is the parser. Do not call or rely on a programmatic tag scanner, parser, AST, or dispatch classifier.

Entry and Dispatch Boundary

Reactant has three direct entry skills: execute, execute-one, and skill-generator. The first two are document routers. skill-generator is a direct project-authoring utility, has no inline tag form, and is never dispatched by a router. All remaining Reactant skills are tag-only workers. Invoke a worker only after this router has selected its exact actionable annotation from the target document. Never invoke a worker because ordinary chat, authored prose, or another skill merely resembles its capability.

Usage

/execute-one <file>

Resolve a relative file path against the current working directory.

Annotation Interpretation

Read the whole document and use its structure and meaning to interpret <@skill-name> / <@skill-name: prompt> annotations. Prompts may wrap across lines.

  • Skip <@comment: ...> and paired <@chat-model> response data.
  • Skip a chat-user turn already followed by its model response.
  • Do not execute tags that are being shown as documentation, quoted examples, or code samples. A leading backslash is an optional explicit hint, not a required escape grammar.
  • Leave ambiguous, malformed-looking, and unknown tags unchanged; report them instead of guessing.
  • execute, execute-one, and skill-generator are entry skills, not inline operations. Preserve and report an apparent annotation using any of those names; never dispatch it.

Skill Discovery

For the selected annotation, look for the matching SKILL.md in project-local .reactant/skills/, configured skill_roots in order, and then the bundled Reactant skills available in the current host/install. Project-local skills may not shadow execute, execute-one, skill-generator, chat-user, resolve, chat-model, or comment. Report ambiguous collisions and do not dispatch them.

Workflow

  1. Read the entire current file.
  2. Interpret it and select the first actionable Reactant annotation in source order. If none remains, report that and stop.
  3. Discover and read the matching SKILL.md. This exact router selection is the only authorization to activate that tag-only worker. Follow it for this one tag only. Use an isolated subagent if the host provides one and it is appropriate; otherwise perform the protocol directly.
  4. Supply the absolute document path, project root, exact raw annotation, interpreted name/prompt, surrounding authored block, modifiers, relevant chat chain and context references, plus full-file access.
  5. Accept the result as produced without a second model pass, grading, fact-checking, automatic retry, or semantic verification.
  6. Report the result. On failure, leave the tag in place. In every case stop after this one dispatch; never attempt a second tag.

Rules

  • Exactly one dispatch per invocation. Repeated /execute-one calls advance through the document one annotation at a time.
  • Preserve unrelated annotations, comments, chat-model blocks, answered chat turns, and literal examples byte-for-byte unless the selected skill is explicitly defined to consume that exact content.
  • The router itself does not edit .reactant/; only a selected skill that is explicitly responsible for project-local skills, or the transaction kernel, may do so.

Transactional History

A project may record authoring history. Before dispatching, look for .reactant/config.json at or above the document's directory. If it exists and contains a "repository_id" field, history is enabled and the single dispatch must be wrapped in a kernel transaction. If the file is absent or has no repository_id, dispatch exactly as described above, editing the real file directly — no history is recorded.

The kernel ships with the optional reactant Python developer package. When history is enabled but python3 -m reactant version fails, do not dispatch: report that this project has history enabled but the kernel is unavailable, and let the user either install the package or decide to proceed without history by saying so explicitly.

Wrap the one selected annotation like this:

  1. Open the transaction, passing your selection as JSON on stdin:

    python3 -m reactant tx-begin --project "<project-root>" --json-file - <<'EOF'
    {"invocation": "execute-one",
     "document": "<target document path>",
     "tag": {"raw": "<annotation text copied exactly from the document>",
             "name": "<interpreted skill name>",
             "prompt": "<interpreted prompt, or omit>"},
     "skill": {"name": "<skill name>", "path": "<selected skill directory>"},
     "agent": {"host": "<host product name>", "model_name": "<exact model id, or omit>"},
     "context_inputs": ["<double-backtick input paths, if any>"],
     "observed_annotations": [{"kind": "comment", "name": "comment",
                               "raw": "<@comment: copied exactly>"}]}
    EOF
    

    tag.raw must be an exact copy of the selected annotation text. If that exact text occurs more than once in the document, add "char_start": <0-based character offset> so the range is unambiguous. observed_annotations is optional but valuable: report the annotation-layer content you noticed while interpreting the document — <@comment: ...> tags and other non-executable data — copied exactly, so provenance can exclude those words from authored text. The same more-than-once rule applies (char_start per entry). Relative context_inputs paths resolve from the document's directory. The kernel only verifies mechanically that each range matches your raw text; selecting and interpreting annotations remains your judgment. If tx-begin reports an error (for example another transaction is still open), resolve it as the message directs before dispatching.

  2. The reply contains staged_project_root and staged_document_path. Give the worker skill the STAGED document path and STAGED project root instead of the real ones. During the transaction, neither you nor the worker may modify the real project — a real-project change is detected at commit and fails the transaction.

  3. When the worker completes successfully:

    python3 -m reactant tx-commit <transaction-id> --project "<project-root>"
    

    If the worker added new annotation-layer content — for example the <@chat-model> response block appended by chat-user — report it in the commit so provenance can exclude it from authored prose: pass --json-file - with {"produced_annotations": [{"kind": "chat-model", "name": "chat-model", "raw": "<inserted block text copied exactly>", "path": "<file it is in>"}]}. The path is relative to the staged project root and must name a file this transaction changed. If the exact raw text occurs more than once in that file, add "char_start" for the entry, as with the tag.

  4. When the worker fails or a needed capability is unavailable:

    python3 -m reactant tx-fail <transaction-id> --project "<project-root>" --error "<short summary>"
    

    The unresolved tag remains in the real file; report the failure and stop.

  5. Act on the commit reply's "status" — there are three outcomes, not two:

    • "success": the staged result is installed in the real project and recorded; report the consumed annotation.
    • "no-op": the worker completed but produced NO staged change; report explicitly that the annotation was dispatched but not consumed and remains in the document — never describe a no-op as a successful consumption.
    • "failed": show the user the error summary. In every case stop after this one dispatch — never attempt a second tag.

Open transactions are serialized: never begin a transaction while another one is open.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

chat-user

免费

Reactant tag-only document chat. Use only when execute or execute-one dispatches an exact unanswered <@chat-user> tag; never activate from ordinary chat or another skill.

中文简介正在准备中。当前显示原文说明。

a554b554/Reactant542026年9月10日 更新

cite

免费

Reactant tag-only citation. Use only when execute or execute-one dispatches an exact <@cite> tag from a document; never activate from ordinary chat or another skill.

中文简介正在准备中。当前显示原文说明。

a554b554/Reactant542026年9月10日 更新

edit

免费

Reactant tag-only text edit. Use only when execute or execute-one dispatches an exact <@edit> tag from a document; never activate from ordinary chat or another skill.

中文简介正在准备中。当前显示原文说明。

a554b554/Reactant542026年9月10日 更新

execute

免费

Reactant router — read a document, interpret its <@skill> annotations in context, and execute every actionable tag sequentially from top to bottom, re-reading after each one. Use when the user asks to execute, run, or process Reactant tags in a file.

中文简介正在准备中。当前显示原文说明。

a554b554/Reactant542026年9月10日 更新

figure

免费

Reactant tag-only figure generation. Use only when execute or execute-one dispatches an exact <@figure> tag from a document; never activate from ordinary chat or another skill.

中文简介正在准备中。当前显示原文说明。

a554b554/Reactant542026年9月10日 更新

ph

免费

Reactant tag-only placeholder. Use only when execute or execute-one dispatches an exact <@ph> tag from a document; never activate from ordinary chat or another skill.

中文简介正在准备中。当前显示原文说明。

a554b554/Reactant542026年9月10日 更新

查看 a554b554 的全部技能

报告此技能的问题