bygetpaperclipai· 24 skills
Create new agents in Paperclip with governance-aware hiring. Use when you need to inspect adapter configuration options, compare existing agent configs, draft a new agent prompt/config, and submit a hire request.
$npx -y skills add getpaperclipai/paperclip --skill paperclip-create-agentInstalls into the current project.
Run `npx skills use "https://github.com/getpaperclipai/paperclip" --skill "getpaperclipai/paperclip/paperclip-create-agent"` and follow the generated skill instructions now. Read its complete output, redirecting it to a temporary file first if necessary. Resolve relative paths from the supporting-files directory it provides.
Use the skills in "https://github.com/getpaperclipai/paperclip" that are relevant to the current task. Run `npx skills add "https://github.com/getpaperclipai/paperclip"` and select the relevant skills, then follow their instructions.
| 1 | # Paperclip Create Agent Skill |
| 2 | |
| 3 | Use this skill when you are asked to hire/create an agent. |
| 4 | |
| 5 | ## Preconditions |
| 6 | |
| 7 | Paperclip must already be installed and running. If the server is not up or `PAPERCLIP_API_URL` is unreachable, read `skills/paperclip/references/setup-installation.md` first. |
| 8 | |
| 9 | You need either: |
| 10 | |
| 11 | - board access, or |
| 12 | - agent permission `can_create_agents=true` in your company |
| 13 | |
| 14 | If you do not have this permission, escalate to your CEO or board. |
| 15 | |
| 16 | ## Workflow |
| 17 | |
| 18 | ### 1. Confirm identity and company context |
| 19 | |
| 20 | ```sh |
| 21 | curl -sS "$PAPERCLIP_API_URL/api/agents/me" \ |
| 22 | -H "Authorization: Bearer $PAPERCLIP_API_KEY" |
| 23 | ``` |
| 24 | |
| 25 | ### 2. Discover adapter configuration for this Paperclip instance |
| 26 | |
| 27 | ```sh |
| 28 | curl -sS "$PAPERCLIP_API_URL/llms/agent-configuration.txt" \ |
| 29 | -H "Authorization: Bearer $PAPERCLIP_API_KEY" |
| 30 | |
| 31 | # Then the specific adapter you plan to use, e.g. claude_local: |
| 32 | curl -sS "$PAPERCLIP_API_URL/llms/agent-configuration/claude_local.txt" \ |
| 33 | -H "Authorization: Bearer $PAPERCLIP_API_KEY" |
| 34 | ``` |
| 35 | |
| 36 | ### 3. Compare existing agent configurations |
| 37 | |
| 38 | ```sh |
| 39 | curl -sS "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/agent-configurations" \ |
| 40 | -H "Authorization: Bearer $PAPERCLIP_API_KEY" |
| 41 | ``` |
| 42 | |
| 43 | Note naming, icon, reporting-line, and adapter conventions the company already follows. |
| 44 | |
| 45 | ### 4. Choose the instruction source (required) |
| 46 | |
| 47 | This is the single most important decision for hire quality. Pick exactly one path: |
| 48 | |
| 49 | - **Exact template** — the role matches an entry in the template index. Use the matching file under `references/agents/` as the starting point. |
| 50 | - **Adjacent template** — no exact match, but an existing template is close (for example, a "Backend Engineer" hire adapted from `coder.md`, or a "Content Designer" adapted from `uxdesigner.md`). Copy the closest template and adapt deliberately: rename the role, rewrite the role charter, swap domain lenses, and remove sections that do not fit. |
| 51 | - **Generic fallback** — no template is close. Use the baseline role guide to construct a new `AGENTS.md` from scratch, filling in each recommended section for the specific role. |
| 52 | |
| 53 | Template index and when-to-use guidance: |
| 54 | `skills/paperclip-create-agent/references/agent-instruction-templates.md` |
| 55 | |
| 56 | Generic fallback for no-template hires: |
| 57 | `skills/paperclip-create-agent/references/baseline-role-guide.md` |
| 58 | |
| 59 | State which path you took in your hire-request comment so the board can see the reasoning. |
| 60 | |
| 61 | ### 5. Discover allowed agent icons |
| 62 | |
| 63 | ```sh |
| 64 | curl -sS "$PAPERCLIP_API_URL/llms/agent-icons.txt" \ |
| 65 | -H "Authorization: Bearer $PAPERCLIP_API_KEY" |
| 66 | ``` |
| 67 | |
| 68 | ### 6. Draft the new hire config |
| 69 | |
| 70 | - role / title / name |
| 71 | - icon (required in practice; pick from `/llms/agent-icons.txt`) |
| 72 | - reporting line (`reportsTo`) |
| 73 | - adapter type |
| 74 | - `desiredSkills` from the company skill library when this role needs installed skills on day one |
| 75 | - if any `desiredSkills` or adapter settings expand browser access, external-system reach, filesystem scope, or secret-handling capability, justify each one in the hire comment |
| 76 | - adapter and runtime config aligned to this environment |
| 77 | - leave timer heartbeats off by default; only set `runtimeConfig.heartbeat.enabled=true` with an `intervalSec` when the role genuinely needs scheduled recurring work or the user explicitly asked for it |
| 78 | - if the role may handle private advisories or sensitive disclosures, confirm a confidential workflow exists first (dedicated skill or documented manual process) |
| 79 | - capabilities |
| 80 | - managed instructions bundle (`AGENTS.md`) for adapters that support it; avoid durable `promptTemplate` config |
| 81 | - for coding or execution agents, include the Paperclip execution contract: start actionable work in the same heartbeat; do not stop at a plan unless planning was requested; leave durable progress with a clear next action; use child issues for long or parallel delegated work instead of polling; mark blocked work with owner/action; respect budget, pause/cancel, approval gates, and company boundaries |
| 82 | - instruction text such as `AGENTS.md` built from step 4; for local managed-bundle adapters, send this as top-level `instructionsBundle.files["AGENTS.md"]`. Do not set `adapterConfig.promptTemplate` or `bootstrapPromptTemplate` for new agents. |
| 83 | - source issue linkage (`sourceIssueId` or `sourceIssueIds`) when this hire came from an issue |
| 84 | |
| 85 | ### 7. Review the draft against the quality checklist |
| 86 | |
| 87 | Before submitting, walk the draft-review checklist end-to-end and fix any item that does not pass: |
| 88 | `skills/paperclip-create-agent/references/draft-review-checklist.md` |
| 89 | |
| 90 | ### 8. Submit hire request |
| 91 | |
| 92 | ```sh |
| 93 | curl -sS -X POST "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/agent-hires" \ |
| 94 | -H "Authorization: Bearer $PAPERCLIP_API_KEY" \ |
| 95 | -H "Content-Type: application/json" \ |
| 96 | -d '{ |
| 97 | "name": "CTO", |
| 98 | "role": "cto", |
| 99 | "title": "Chief Technology Officer", |
| 100 | "icon": "crown", |
| 101 | "reportsTo": "<ceo-agent-id>", |
| 102 | "capabilities": "Owns technical roadmap, architecture, staffing, execution", |
| 103 | "desiredSkills": ["vercel-labs/agent-browser/agent-browser"], |
| 104 | "adapterType": "codex_local", |
| 105 | "adapterConfig": {"cwd": "/abs/path/to/repo", "model": "o4-mini"}, |
| 106 | "instructionsBundle": {"files": {"AGENTS.md": "You are the CTO..."}}, |
| 107 | "runtimeConfig": {"heartbeat": {"enabled": false, "wakeOnDemand": true}}, |
| 108 | "sourceIssueId": "<issue-id>" |
| 109 | }' |
| 110 | ``` |
| 111 | |
| 112 | ### 9. Handle governance state |
| 113 | |
| 114 | - if the response has `approval`, the hire is `pending_approval` |
| 115 | - monitor and discuss on the approval thread |
| 116 | - when the board approves, you will be woken with `PAPERCLIP_APPROVAL_ID`; read linked issues and close/comment follow-up |
| 117 | |
| 118 | ```sh |
| 119 | curl -sS "$PAPERCLIP_API_URL/api/approvals/<approval-id>" \ |
| 120 | -H "Authorization: Bearer $PAPERCLIP_API_KEY" |
| 121 | |
| 122 | curl -sS -X POST "$PAPERCLIP_API_URL/api/approvals/<approval-id>/comments" \ |
| 123 | -H "Authorization: Bearer $PAPERCLIP_API_KEY" \ |
| 124 | -H "Content-Type: application/json" \ |
| 125 | -d '{"body":"## CTO hire request submitted\n\n- Approval: [<approval-id>](/approvals/<approval-id>)\n- Pending agent: [<agent-ref>](/agents/<agent-url-key-or-id>)\n- Source issue: [<issue-ref>](/issues/<issue-identifier-or-id>)\n\nUpdated prompt and adapter config per board feedback."}' |
| 126 | ``` |
| 127 | |
| 128 | If the approval already exists and needs manual linking to the issue: |
| 129 | |
| 130 | ```sh |
| 131 | curl -sS -X POST "$PAPERCLIP_API_URL/api/issues/<issue-id>/approvals" \ |
| 132 | -H "Authorization: Bearer $PAPERCLIP_API_KEY" \ |
| 133 | -H "Content-Type: application/json" \ |
| 134 | -d '{"approvalId":"<approval-id>"}' |
| 135 | ``` |
| 136 | |
| 137 | After approval is granted, run this follow-up loop: |
| 138 | |
| 139 | ```sh |
| 140 | curl -sS "$PAPERCLIP_API_URL/api/approvals/$PAPERCLIP_APPROVAL_ID" \ |
| 141 | -H "Authorization: Bearer $PAPERCLIP_API_KEY" |
| 142 | |
| 143 | curl -sS "$PAPERCLIP_API_URL/api/approvals/$PAPERCLIP_APPROVAL_ID/issues" \ |
| 144 | -H "Authorization: Bearer $PAPERCLIP_API_KEY" |
| 145 | ``` |
| 146 | |
| 147 | For each linked issue, either: |
| 148 | - close it if the approval resolved the request, or |
| 149 | - comment in markdown with links to the approval and next actions. |
| 150 | |
| 151 | ## References |
| 152 | |
| 153 | - Template index and how to apply a template: `skills/paperclip-create-agent/references/agent-instruction-templates.md` |
| 154 | - Individual role templates: `skills/paperclip-create-agent/references/agents/` |
| 155 | - Generic baseline role guide (no-template fallback): `skills/paperclip-create-agent/references/baseline-role-guide.md` |
| 156 | - Pre-submit draft-review checklist: `skills/paperclip-create-agent/references/draft-review-checklist.md` |
| 157 | - Endpoint payload shapes and full examples: `skills/paperclip-create-agent/references/api-reference.md` |