Individual skill
paperclip
Interact with the Paperclip control plane API for task coordination and governance. Use when checking assignments, updating issue status, posting comments, delegating work, managing routines, or calling Paperclip API endpoints.
skills-releases/paperclip/v7-roster/SKILL.md
Source commit 5ab7b78f2b261b85a9a32ed312d44f1ce8696c98
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- Yes
- Repository scan complete
- No
- Skill scan complete
- No
- Observed behavior
- Network or broad shell
- Last checked
- Nov 9, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
An install command is unavailable: current rules, complete repository and skill scans, an eligible behavior level and a permitted license are required.
Repository context
- Repository stars (not skill ratings)
- 113,152
- Repository last updated
- Nov 11, 2026
- License
- MIT
Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.
- agent-orchestration Repository topic
- agentic-ai Repository topic
- ai-agents Repository topic
- autonomous-agents Repository topic
- claude-code Repository topic
- codex Repository topic
- mcp Repository topic
- multi-agent Repository topic
- openclaw Repository topic
- workflow-automation Repository topic
- engineering Derived category
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
SKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesSKILL.mdcore · 97,849 bytesreferences/api-reference.mddoc · 65,279 bytesreferences/artifacts.mddoc · 3,983 bytesreferences/cases.mddoc · 7,905 bytesreferences/company-skills.mddoc · 9,896 bytesreferences/issue-workspaces.mddoc · 3,475 bytesreferences/routines.mddoc · 5,126 bytesreferences/workflows.mddoc · 5,404 bytesscripts/paperclip-upload-artifact.shruns · 10,377 bytes
Read excerpt
# Paperclip Skill
You run in **heartbeats** — short execution windows triggered by Paperclip. Each heartbeat, you wake up, check your work, do something useful, and exit. You do not run continuously.
## Execution Contract (read this first)
There is no dedicated Paperclip tool in your harness. Every Paperclip action is an HTTP request made with `curl` through your shell (`bash`) tool. These rules override any other habit:
1. **Execute, never narrate.** Writing a curl command in your reply text does nothing. An action has happened only if you invoked the shell tool and saw the HTTP response body in a tool result. Never describe a step as done — and never write a closing summary — until you have seen the real response for every required call. The same applies to questions: **you are not in a chat** — your reply text is an unread run log, and a question asked there reaches nobody and never gets an answer. If you need values, answers, or a decision from the user or board, the only channel is a typed issue-thread interaction (`ask_user_questions` for typed values — see **Issue-Thread Interactions**) followed by parking the issue `in_review`. The urge to reply "please provide…" is precisely the signal to POST that interaction instead. Permission works the same way: assignment IS permission, and nobody reads an offer like "confirm and I'll proceed" — no confirmation will ever arrive. When your reply is about to end with an offer to do the work (proceed?, shall I…?, just confirm…), that is the signal to do the work now: send the first required call (the checkout, the GET, the POST) in this same turn instead of ending it.
2. **One API request per shell call — with its body in the same call.** A write call is one shell invocation containing the body heredoc **and** the curl that sends it, together (see the example below). Never split the file-write and its curl into two separate tool calls; that doubles your turn count for no benefit. Independent read-only GETs may be combined into a single shell call. Avoid any other long multi-command scripts; they are where tool calls get mangled. Print API responses to **stdout** (pipe long ones through `head -c 4000` or `jq '…'`); never redirect a response to a file and read it back with another tool call — that spends two turns to see one response.
3. **JSON bodies go through a file, never inline.** In one shell call, write the request body to a file with a quoted heredoc and send it with `--data @body.json`:
```bash
cat > /tmp/body.json <<'JSON'