Files
PaperClipAI/packages/paperclip-runner/generated/capability/capabilities.yaml
T
DottaandPaperclip 018993140f feat: let agents name prompt-only tasks (#14761)
## Thinking Path

> - Paperclip is the open source app people use to manage AI agents for
work.
> - Users create tasks with a title and a description.
> - A required title adds work when the prompt already explains the
request.
> - An agent can name the task once it reads that request.
> - This pull request accepts prompt-only tasks and starts them with a
short prompt slice.
> - A scoped title tool lets the assigned agent replace that slice early
without changing execution state.
> - A live browser eval checks the real agent call, saved title, audit
entry, and preservation of user titles.

## Linked Issues or Issue Description

**Subsystem affected**

Cross-cutting: task creation, shared contracts, database, server, runner
tools, and board UI.

**Problem or motivation**

Users must currently write a title before they can submit a detailed
task prompt. The agent has enough context to write a useful title
itself.

**Proposed solution**

Make the title optional when a description is present. Save the first
120 characters of the normalized prompt as a provisional title. Ask the
assigned agent to call `set_task_title` early. Use an atomic
provisional-title guard to preserve titles supplied or edited by users.
Keep explicit titles supported.

Related: #14543 and #14556 concern empty-title submission. This change
intentionally enables that submission when a prompt is present, instead
of requiring a title.

## What Changed

- Add the `titleNeedsGeneration` field with an idempotent migration.
Keep existing titles unchanged.
- Add `PUT /api/issues/:id/title` and the native and legacy
`set_task_title` tool. Enforce company access, active-run ownership,
shared, bounded retry receipts across native/HTTP calls, and
transactional audit logging. Refresh external-object links after commit,
with the same feature gate and plugin detectors as ordinary title edits.
- Add early naming guidance in Standard, Ask, and Plan task context.
Preserve the description, status, and assignment.
- Allow prompt-only root and child task creation, plus draft restoration
in the New Task dialog. Keep user titles supported.
- Add an opt-in Product E2E suite for prompt-only Standard and Ask
tasks, plus an explicit-title control. It checks actual provider calls
within the first five tools, persisted state, audit attribution, and the
reloaded UI.
- Preserve a closed vocabulary of API key maintenance phrases in
declared prose while rejecting opaque credential suffixes. Add one
bounded naming retry after wording is rejected, without treating the
rejected call as a saved title.
- Repair the native cleanup receipt check exposed during full
verification: accept matching input digests, retain legacy input checks,
and reject conflicting receipts.

## Verification

- Live Product E2E on `f43478473800e3a46b85c5ee79677efdb15108e7`: **3/3
passed** with native Codex `gpt-5.4-mini`, first attempts only,
automatic retries disabled. Standard and Ask each saved “Rotate expired
API key” on their first tool call, with matching persisted state and a
single same-run audit entry. The explicit-title control retained its
user title with zero title writes. All three verified the reloaded
browser UI.
- Campaign: `local-2026-09-30T21-30-11-021Z`. Earlier failed campaigns
are retained separately; they exposed credential-prose handling and
prompted the naming recovery fix. No failed result was regraded or
deleted.
- Reproduce with `pnpm test:e2e:runner -- --id
task-titles.runner-codex-mini.local.prompt-title-standard --id
task-titles.runner-codex-mini.local.prompt-title-ask --id
task-titles.runner-codex-mini.local.preserve-explicit-title
--max-automatic-retries 0` and an authorized provider key.
- Full `pnpm -r typecheck` and `pnpm build` passed on the latest commit.
The runner build used the configured external eval source tree.
- Product E2E unit suite: **61 files, 818 tests passed**; E2E typecheck
and UI token gates passed.
- Title API/native regressions cover prompt-only and explicit child
creation, user edits, ownership/company isolation, external reference
refresh, cross-surface retry replay, and the 64-key limit without
receipt eviction. All passed. Prompt-context coverage: **44 tests
passed**.
- Rust credential regressions: **35 tests passed**, including benign
maintenance qualifiers and opaque credential rejection in every declared
prose field. Catalog/report reconciliation: **28 tests passed**. Native
recovery: **560 tests passed**.
- Broad local `pnpm test:run`: **14,555 tests passed** in the general
server group; two suites failed to initialize embedded PostgreSQL and
the existing 40,000-file Git streaming stress test exceeded its
300-second macOS timeout. All three suites then passed in isolation (**5
tests passed**) without code or timeout changes. The original full local
command exited nonzero and is not being represented as a clean full run.
- Latest-head GitHub checks are green: **53 passed, 4 skipped, zero
failed or pending**, including all test shards and the canary packaging
dry run. Greptile reviewed the same commit at **5/5**, with zero
unresolved review threads.

## Risks

- The additive database field must reach the server and UI together. The
migration uses `IF NOT EXISTS` and defaults existing tasks to a final
title.
- Title generation depends on the assigned agent running. Tasks without
a run keep their provisional title.
- Live qualification covers the native Codex path in Standard and Ask
modes. API/legacy and Plan behavior have deterministic coverage.
- The credential-prose exception validates the entire suffix against a
closed maintenance vocabulary. Unknown suffixes, assignments, quoted
values, credential prefixes, and diagnostics retain strict checks.

## Model Used

OpenAI Codex, based on GPT-6, with reasoning, tool use, and code
execution. The exact deployment ID and context window are not exposed in
this session. The live eval uses the native Codex `gpt-5.4-mini`
profile.

## Checklist

- [x] I have included a thinking path that traces from project context
to this change
- [x] I have specified the model used (with version and capability
details)
- [x] I have checked ROADMAP.md and confirmed this PR does not duplicate
planned core work
- [x] I have searched GitHub for duplicate or related PRs and linked
them above
- [x] I have either (a) linked existing issues with `Fixes: #` / `Closes
#` / `Refs #` OR (b) described the issue in-PR following the relevant
issue template
- [x] I have not referenced internal/instance-local Paperclip issues or
links (only public GitHub `#NNN` / `github.com/paperclipai/paperclip`
URLs)
- [x] My branch name describes the change (e.g. `docs/...`, `fix/...`)
and contains no internal Paperclip ticket id or instance-derived details
- [x] I have run tests locally and they pass
- [x] I have added or updated tests where applicable
- [x] I have updated relevant documentation to reflect my changes
- [x] I have considered and documented any risks above
- [x] All Paperclip CI gates are green
- [x] Greptile is 5/5 with no open P2s, recommendations, or follow-ups
- [x] I will address all Greptile and reviewer comments before
requesting merge

---------

Co-authored-by: Paperclip <noreply@paperclip.ing>
2026-09-30 16:48:24 -05:00

1428 lines
62 KiB
YAML

{
"schemaVersion": 1,
"rows": [
{
"id": "skill:skills/paperclip/SKILL.md:10",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L10:paperclip-skill",
"heading": "Paperclip Skill",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/SKILL.md:14",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L14:terminology",
"heading": "Terminology",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:18",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L18:authentication",
"heading": "Authentication",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:30",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L30:conversation-tasks",
"heading": "Conversation tasks",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:47",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L47:server-verified-external-chat-turns",
"heading": "Server-Verified External Chat Turns",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:87",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L87:the-heartbeat-procedure",
"heading": "The Heartbeat Procedure",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:197",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L197:generated-artifacts-and-work-products",
"heading": "Generated Artifacts and Work Products",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "register_deliverable",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/SKILL.md:245",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L245:status-quick-guide",
"heading": "Status Quick Guide",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:255",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L255:monitors-and-watchers-say-only-what-you-actually-scheduled",
"heading": "Monitors and Watchers (say only what you actually scheduled)",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:268",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L268:delegating-review-tasks",
"heading": "Delegating review tasks",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:279",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L279:managing-a-user-s-inbox",
"heading": "Managing A User's Inbox",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:287",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L287:issue-dependencies-blockers",
"heading": "Issue Dependencies (Blockers)",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:312",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L312:requesting-board-approval",
"heading": "Requesting Board Approval",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/SKILL.md:333",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L333:issue-thread-interactions",
"heading": "Issue-Thread Interactions",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "request_human_input",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/SKILL.md:362",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L362:standalone-decisions",
"heading": "Standalone Decisions",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:466",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L466:mcp-tool-approval-gates",
"heading": "MCP Tool Approval Gates",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/SKILL.md:508",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L508:niche-workflow-pointers",
"heading": "Niche Workflow Pointers",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:518",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L518:cases",
"heading": "Cases",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/SKILL.md:523",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L523:company-skills-workflow",
"heading": "Company Skills Workflow",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/SKILL.md:534",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L534:routines",
"heading": "Routines",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/SKILL.md:545",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L545:issue-workspace-runtime-controls",
"heading": "Issue Workspace Runtime Controls",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/SKILL.md:552",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L552:proposing-credentials-safely",
"heading": "Proposing Credentials Safely",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:559",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L559:reading-granted-secrets",
"heading": "Reading Granted Secrets",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/SKILL.md:585",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L585:critical-rules",
"heading": "Critical Rules",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:606",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L606:comment-style-required",
"heading": "Comment Style (Required)",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "report_progress",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/SKILL.md:638",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L638:update",
"heading": "Update",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:648",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L648:planning-required-when-planning-requested",
"heading": "Planning (Required when planning requested)",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "write_document",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/SKILL.md:681",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L681:key-endpoints-hot-routes",
"heading": "Key Endpoints (Hot Routes)",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:710",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L710:searching-issues",
"heading": "Searching Issues",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:720",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L720:full-reference",
"heading": "Full Reference",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/SKILL.md:724",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/SKILL.md#L724:conversational-confirmation-answers",
"heading": "Conversational confirmation answers",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "call_api",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1:paperclip-api-reference",
"heading": "Paperclip API Reference",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:9",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L9:response-schemas",
"heading": "Response Schemas",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:11",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L11:agent-record-get-api-agents-me-or-get-api-agents-agentid",
"heading": "Agent Record (`GET /api/agents/me` or `GET /api/agents/:agentId`)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:44",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L44:company-portability",
"heading": "Company Portability",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:110",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L110:issue-with-ancestors-get-api-issues-issueid",
"heading": "Issue with Ancestors (`GET /api/issues/:issueId`)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:196",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L196:issue-update-response-patch-api-issues-issueid",
"heading": "Issue Update Response (`PATCH /api/issues/:issueId`)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:238",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L238:blocker-diagnostics-get-api-issues-issueid-diagnostics-blockers",
"heading": "Blocker Diagnostics (`GET /api/issues/:issueId/diagnostics/blockers`)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:277",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L277:wake-diagnostics-get-api-issues-issueid-diagnostics-wakes",
"heading": "Wake Diagnostics (`GET /api/issues/:issueId/diagnostics/wakes`)",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:321",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L321:subtree-diagnostics-get-api-issues-issueid-diagnostics-subtree",
"heading": "Subtree Diagnostics (`GET /api/issues/:issueId/diagnostics/subtree`)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:369",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L369:execution-policy-fields-on-an-issue",
"heading": "Execution Policy Fields On An Issue",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:421",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L421:cross-agent-review-gates",
"heading": "Cross-Agent Review Gates",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:454",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L454:worked-example-ic-heartbeat",
"heading": "Worked Example: IC Heartbeat",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:459",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L459:1-identity-skip-if-already-in-context",
"heading": "1. Identity (skip if already in context)",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:463",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L463:2-check-inbox",
"heading": "2. Check inbox",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:470",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L470:3-already-have-issue-101-in-progress-highest-priority-continue-it",
"heading": "3. Already have issue-101 in_progress (highest priority). Continue it.",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:477",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L477:4-do-the-actual-work-write-code-run-tests",
"heading": "4. Do the actual work (write code, run tests)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:479",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L479:5-work-is-done-update-status-and-comment-in-one-call",
"heading": "5. Work is done. Update status and comment in one call.",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "report_progress",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:483",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L483:6-still-have-time-checkout-the-next-task",
"heading": "6. Still have time. Checkout the next task.",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:490",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L490:7-made-partial-progress-not-done-yet-comment-and-exit",
"heading": "7. Made partial progress, not done yet. Comment and exit.",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "report_progress",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:495",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L495:worked-example-report-a-board-user-s-mine-inbox",
"heading": "Worked Example: Report A Board User's Mine Inbox",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "report_progress",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:500",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L500:board-user-created-the-requesting-issue",
"heading": "Board user created the requesting issue.",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:504",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L504:fetch-the-board-user-s-mine-inbox-issues",
"heading": "Fetch the board user's Mine inbox issues.",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:518",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L518:summarize-it-back-to-the-board-in-a-comment-or-document",
"heading": "Summarize it back to the board in a comment or document.",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "write_document",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:523",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L523:worked-example-archive-a-resolved-inbox-item",
"heading": "Worked Example: Archive A Resolved Inbox Item",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:528",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L528:the-responsible-user-s-id-is-resolved-from-the-authenticated-agent-run",
"heading": "The responsible user's id is resolved from the authenticated agent run.",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:537",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L537:reverse-the-archive-if-it-was-premature-or-no-longer-desired",
"heading": "Reverse the archive if it was premature or no longer desired.",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:547",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L547:worked-example-reviewer-approver-heartbeat",
"heading": "Worked Example: Reviewer / Approver Heartbeat",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:586",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L586:worked-example-manager-heartbeat",
"heading": "Worked Example: Manager Heartbeat",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:589",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L589:1-identity-skip-if-already-in-context",
"heading": "1. Identity (skip if already in context)",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:593",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L593:2-check-team-status",
"heading": "2. Check team status",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:600",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L600:3-agent-42-is-blocked-read-comments",
"heading": "3. Agent-42 is blocked. Read comments.",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "report_progress",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:604",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L604:4-unblock-reassign-and-comment",
"heading": "4. Unblock: reassign and comment.",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "report_progress",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:608",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L608:5-check-own-assignments",
"heading": "5. Check own assignments.",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:615",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L615:6-create-subtasks-and-delegate",
"heading": "6. Create subtasks and delegate.",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:621",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L621:load-tests-depend-on-caching-layer-being-done-first-paperclip-will-auto-wake-agent-55-when-the-blocker-resolves",
"heading": "^ Load tests depend on caching layer being done first. Paperclip will auto-wake agent-55 when the blocker resolves.",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:626",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L626:7-dashboard-for-health-check",
"heading": "7. Dashboard for health check.",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:632",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L632:comments-and-mentions",
"heading": "Comments and @-mentions",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "report_progress",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:639",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L639:update",
"heading": "Update",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:661",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L661:cross-team-work-and-delegation",
"heading": "Cross-Team Work and Delegation",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:665",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L665:receiving-cross-team-work",
"heading": "Receiving cross-team work",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:675",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L675:questions-and-dependencies",
"heading": "Questions and dependencies",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "request_human_input",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:687",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L687:company-context",
"heading": "Company Context",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:699",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L699:company-branding-ceo-board",
"heading": "Company Branding (CEO / Board)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:719",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L719:openclaw-invite-prompt-ceo",
"heading": "OpenClaw Invite Prompt (CEO)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:738",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L738:setting-agent-instructions-path",
"heading": "Setting Agent Instructions Path",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:771",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L771:project-setup-create-workspace",
"heading": "Project Setup (Create + Workspace)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:795",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L795:option-a-one-call-create-with-workspace",
"heading": "Option A: One-call create with workspace",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:814",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L814:option-b-two-calls-project-first-then-workspace",
"heading": "Option B: Two calls (project first, then workspace)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:843",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L843:governance-and-approvals",
"heading": "Governance and Approvals",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:847",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L847:requesting-a-hire-management-only",
"heading": "Requesting a hire (management only)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:912",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L912:ceo-strategy-approval",
"heading": "CEO strategy approval",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:921",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L921:questions-and-waiting-for-human-input",
"heading": "Questions and waiting for human input",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "request_human_input",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1028",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1028:issue-thread-confirmations",
"heading": "Issue-thread confirmations",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1086",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1086:conversational-confirmation-answers",
"heading": "Conversational confirmation answers",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "call_api",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1092",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1092:checkbox-confirmations",
"heading": "Checkbox confirmations",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1207",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1207:item-verdict-requests",
"heading": "Item verdict requests",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1317",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1317:checking-approval-status",
"heading": "Checking approval status",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1323",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1323:approval-follow-up-requesting-agent",
"heading": "Approval follow-up (requesting agent)",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1341",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1341:issue-lifecycle",
"heading": "Issue Lifecycle",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1371",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1371:error-handling",
"heading": "Error Handling",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1385",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1385:full-api-reference",
"heading": "Full API Reference",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1387",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1387:agents",
"heading": "Agents",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1408",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1408:issues-tasks",
"heading": "Issues (Tasks)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1449",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1449:companies-projects-goals",
"heading": "Companies, Projects, Goals",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1473",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1473:routines",
"heading": "Routines",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1489",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1489:approvals-costs-activity-dashboard",
"heading": "Approvals, Costs, Activity, Dashboard",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1511",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1511:secrets",
"heading": "Secrets",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1524",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1524:agent-secret-proposals",
"heading": "Agent secret proposals",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1577",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1577:re-bind-an-existing-secret-under-a-new-path-no-secret-id",
"heading": "Re-bind an existing secret under a new path (no secret ID)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1624",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1624:agent-secret-access",
"heading": "Agent secret access",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/api-reference.md:1664",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/api-reference.md#L1664:common-mistakes",
"heading": "Common Mistakes",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/artifacts.md:1",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/artifacts.md#L1:generated-artifacts-and-work-products",
"heading": "Generated Artifacts and Work Products",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "register_deliverable",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/artifacts.md:15",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/artifacts.md#L15:workspace-only-file-references",
"heading": "Workspace-Only File References",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/cases.md:1",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/cases.md#L1:cases",
"heading": "Cases",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/cases.md:12",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/cases.md#L12:core-model",
"heading": "Core Model",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/cases.md:29",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/cases.md#L29:upsert-semantics",
"heading": "Upsert Semantics",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/cases.md:67",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/cases.md#L67:read-and-search",
"heading": "Read And Search",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/cases.md:90",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/cases.md#L90:documents",
"heading": "Documents",
"primaryDisposition": "always_agent_tool",
"semanticOperation": "write_document",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/cases.md:118",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/cases.md#L118:fields",
"heading": "Fields",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/cases.md:151",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/cases.md#L151:issue-links",
"heading": "Issue Links",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/cases.md:176",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/cases.md#L176:child-cases",
"heading": "Child Cases",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/cases.md:195",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/cases.md#L195:attachments",
"heading": "Attachments",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/cases.md:208",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/cases.md#L208:lifecycle",
"heading": "Lifecycle",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/cases.md:222",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/cases.md#L222:worked-blog-post-example",
"heading": "Worked Blog Post Example",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:1",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L1:company-skills-workflow",
"heading": "Company Skills Workflow",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:5",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L5:what-exists",
"heading": "What Exists",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:22",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L22:permission-model",
"heading": "Permission Model",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:29",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L29:core-endpoints",
"heading": "Core Endpoints",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:65",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L65:install-a-skill-into-the-company",
"heading": "Install A Skill Into The Company",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:75",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L75:app-shipped-catalog",
"heading": "App-shipped catalog",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:101",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L101:external-source-import",
"heading": "External source import",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:105",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L105:source-types-in-order-of-preference",
"heading": "Source types (in order of preference)",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:116",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L116:example-skills-sh-import-preferred",
"heading": "Example: skills.sh import (preferred)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:138",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L138:example-github-import",
"heading": "Example: GitHub import",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:164",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L164:inspect-what-was-installed",
"heading": "Inspect What Was Installed",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:181",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L181:assign-skills-to-an-existing-agent",
"heading": "Assign Skills To An Existing Agent",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:216",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L216:include-skills-during-hire-or-create",
"heading": "Include Skills During Hire Or Create",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/company-skills.md:256",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/company-skills.md#L256:notes",
"heading": "Notes",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/issue-workspaces.md:1",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/issue-workspaces.md#L1:issue-workspace-runtime-controls",
"heading": "Issue Workspace Runtime Controls",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/issue-workspaces.md:5",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/issue-workspaces.md#L5:discover-the-workspace",
"heading": "Discover the Workspace",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/issue-workspaces.md:23",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/issue-workspaces.md#L23:control-services",
"heading": "Control Services",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/issue-workspaces.md:28",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/issue-workspaces.md#L28:start-all-configured-services-waits-for-configured-readiness-checks",
"heading": "Start all configured services; waits for configured readiness checks.",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/issue-workspaces.md:36",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/issue-workspaces.md#L36:restart-all-configured-services",
"heading": "Restart all configured services.",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/issue-workspaces.md:44",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/issue-workspaces.md#L44:stop-all-running-services",
"heading": "Stop all running services.",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/issue-workspaces.md:63",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/issue-workspaces.md#L63:read-the-url",
"heading": "Read the URL",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/issue-workspaces.md:72",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/issue-workspaces.md#L72:mcp-tools",
"heading": "MCP Tools",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/routines.md:1",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L1:paperclip-routines",
"heading": "Paperclip Routines",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/routines.md:16",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L16:lifecycle",
"heading": "Lifecycle",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/routines.md:27",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L27:creating-a-routine",
"heading": "Creating a Routine",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/routines.md:64",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L64:concurrency-policies",
"heading": "Concurrency Policies",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/routines.md:76",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L76:catch-up-policies",
"heading": "Catch-Up Policies",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/routines.md:87",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L87:activity-gated-scheduled-runs",
"heading": "Activity-Gated Scheduled Runs",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/routines.md:107",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L107:example-skip-quiet-nights",
"heading": "Example: skip quiet nights",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/routines.md:126",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L126:adding-triggers",
"heading": "Adding Triggers",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/routines.md:136",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L136:schedule-cron",
"heading": "Schedule (cron)",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/routines.md:150",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L150:webhook",
"heading": "Webhook",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/routines.md:167",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L167:api-manual-only",
"heading": "API (manual only)",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/routines.md:179",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L179:updating-and-deleting-triggers",
"heading": "Updating and Deleting Triggers",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/routines.md:196",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L196:manual-run",
"heading": "Manual Run",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/routines.md:212",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L212:updating-a-routine",
"heading": "Updating a Routine",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/routines.md:223",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/routines.md#L223:reading-routines-and-runs",
"heading": "Reading Routines and Runs",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/workflows.md:1",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/workflows.md#L1:paperclip-workflow-playbooks",
"heading": "Paperclip Workflow Playbooks",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/workflows.md:7",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/workflows.md#L7:project-setup-ceo-manager",
"heading": "Project Setup (CEO/Manager)",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/workflows.md:22",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/workflows.md#L22:openclaw-invite-ceo",
"heading": "OpenClaw Invite (CEO)",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
},
{
"id": "skill:skills/paperclip/references/workflows.md:50",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/workflows.md#L50:setting-agent-instructions-path",
"heading": "Setting Agent Instructions Path",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/workflows.md:79",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/workflows.md#L79:company-import-export",
"heading": "Company Import / Export",
"primaryDisposition": "optional_agent_tool",
"semanticOperation": "scoped_discovery",
"expectedMockState": "operation_result"
},
{
"id": "skill:skills/paperclip/references/workflows.md:106",
"kind": "skill_heading",
"sourceAnchor": "skills/paperclip/references/workflows.md#L106:self-test-playbook-app-level",
"heading": "Self-Test Playbook (App-Level)",
"primaryDisposition": "control_plane_owned",
"semanticOperation": "runtime_reconciliation",
"expectedMockState": "runtime_decision_record"
}
]
}