Loading...
Loading...
通过聊天以董事会成员身份管理Paperclip公司。涵盖入职流程(公司创建、CEO设置、招聘计划)、Agent管理、审批、任务监控、成本监管以及工作成果评审。当用户想要与他们的Paperclip控制平面交互时,即可使用此技能。
npx skill4agent add getpaperclipai/paperclip paperclip-boardpaperclipai board setupPAPERCLIP_API_URLhttp://localhost:3100PAPERCLIP_COMPANY_IDlocal_trustedPAPERCLIP_API_KEYAuthorization: Bearer $PAPERCLIP_API_KEYcurl -sS/apiContent-Type: application/json$PAPERCLIP_API_URL$PAPERCLIP_API_URL/{companyPrefix}/...PAPERCLIP_API_URLpnpm paperclipai board setupPAPERCLIP_COMPANY_IDGET $PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/issues?q=board+operations&status=todo,in_progressdecision-log# 获取仪表板
curl -sS "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/dashboard"{公司名称} 仪表板
────────────────────────
Agents: {active} 个活跃,{paused} 个暂停
任务: {open} 个未完成({inProgress} 个进行中,{blocked} 个受阻)
预算: ${monthSpendCents/100} / ${monthBudgetCents/100} 本月(利用率 {utilization}%)
待审批项: {pendingApprovals}
{如果pendingApprovals > 0: 简要列出}
{如果blocked > 0: 提及受阻任务}# 列出已存在的公司
curl -sS "$PAPERCLIP_API_URL/api/companies"
# 创建新公司
curl -sS -X POST "$PAPERCLIP_API_URL/api/companies" \
-H "Content-Type: application/json" \
-d '{
"name": "公司名称",
"description": "公司使命/描述",
"budgetMonthlyCents": 50000
}'descriptionidissuePrefixPAPERCLIP_COMPANY_IDrequireBoardApprovalForNewAgents: truecurl -sS -X PATCH "$PAPERCLIP_API_URL/api/companies/{companyId}" \
-H "Content-Type: application/json" \
-d '{"requireBoardApprovalForNewAgents": true}'# 查看可用适配器
curl -sS "$PAPERCLIP_API_URL/llms/agent-configuration.txt"
# 读取适配器专属文档(例如claude_local)
curl -sS "$PAPERCLIP_API_URL/llms/agent-configuration/claude_local.txt"
# 查看可用图标
curl -sS "$PAPERCLIP_API_URL/llms/agent-icons.txt"
# 提交招聘请求
curl -sS -X POST "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/agent-hires" \
-H "Content-Type: application/json" \
-d '{
"name": "CEO姓名",
"role": "ceo",
"title": "首席执行官",
"icon": "crown",
"capabilities": "战略规划、团队管理、任务委派",
"adapterType": "claude_local",
"adapterConfig": {
"cwd": "/path/to/working/directory",
"model": "sonnet"
},
"runtimeConfig": {
"heartbeat": {"enabled": true, "intervalSec": 300, "wakeOnDemand": true}
},
"permissions": {"canCreateAgents": true},
"budgetMonthlyCents": 10000
}'claude_localrequireBoardApprovalForNewAgents: true# 检查待审批项
curl -sS "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/approvals?status=pending"
# 批准CEO招聘
curl -sS -X POST "$PAPERCLIP_API_URL/api/approvals/{approvalId}/approve" \
-H "Content-Type: application/json" \
-d '{"decisionNote": "入职期间董事会批准CEO招聘"}'curl -sS -X POST "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/issues" \
-H "Content-Type: application/json" \
-d '{
"title": "Board Operations",
"description": "用于董事会决策日志和运营跟踪的常设议题",
"status": "in_progress",
"priority": "medium"
}'curl -sS -X PUT "$PAPERCLIP_API_URL/api/issues/{boardIssueId}/documents/decision-log" \
-H "Content-Type: application/json" \
-d '{
"title": "Decision Log",
"format": "markdown",
"body": "# 决策日志 — {公司名称}\n\n## {今日日期}\n- 创建公司{name},使命:{description}\n- 招聘CEO Agent \"{ceo name}\"\n"
}'./artifacts/decision-log.mdcurl -sS -X POST "$PAPERCLIP_API_URL/api/agents/{ceoId}/heartbeat/invoke" \
-H "Content-Type: application/json"# 创建招聘计划议题
curl -sS -X POST "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/issues" \
-H "Content-Type: application/json" \
-d '{
"title": "招聘计划",
"description": "制定并执行团队招聘计划",
"status": "in_progress",
"priority": "high"
}'
# 附加计划文档
curl -sS -X PUT "$PAPERCLIP_API_URL/api/issues/{issueId}/documents/hiring-plan" \
-H "Content-Type: application/json" \
-d '{
"title": "招聘计划",
"format": "markdown",
"body": "# 招聘计划\n\n## 角色\n\n### 1. 角色名称\n- 职责:...\n- 汇报对象:...\n- 预算:...\n"
}'./artifacts/hiring-plan.md./artifacts/hiring-plan.mdGET /api/issues/{id}/documents/hiring-plan# {Agent名称}
## 描述
{一行角色概述}
## 专业能力
{核心专长——该Agent掌握的知识、思维方式、负责工作}
## 优先级
{该Agent工作的首要任务排序}
## 边界
{该Agent不应执行的操作、范围限制、防护规则}
## 工具权限
{该Agent可使用的工具/API,以及任何限制}
## 沟通准则
{该Agent汇报状态、寻求帮助、输出内容的格式}
## 协作与升级
{该Agent协作的对象、升级场景及汇报对象}# 对比现有Agent配置
curl -sS "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/agent-configurations"
# 提交招聘请求
curl -sS -X POST "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/agent-hires" \
-H "Content-Type: application/json" \
-d '{
"name": "Agent名称",
"role": "general",
"title": "职位名称",
"icon": "icon-name",
"reportsTo": "{ceo-or-manager-agent-id}",
"capabilities": "该Agent的能力",
"adapterType": "claude_local",
"adapterConfig": {
"cwd": "/path/to/working/directory",
"model": "sonnet",
"systemPrompt": "... 来自模板的完整系统提示词 ..."
},
"runtimeConfig": {
"heartbeat": {"enabled": true, "intervalSec": 300, "wakeOnDemand": true}
},
"budgetMonthlyCents": 5000
}'reportsTo招聘@designer — 拟议升级路径更新:
基于组织架构(同一汇报链):
@ceo — 添加:"@designer负责品牌资产、视觉设计、用户体验研究。
设计评审需通过@designer。"
@frontend-engineer — 添加:"视觉设计决策需升级至@designer。
构建新UI组件前需请求原型图。"
额外推荐:
@content-strategist — 添加:"向@designer请求视觉资产(页眉、社交图片)
协调品牌语音与设计。"
理由:内容流水线需要博客文章和社交平台的视觉资产。
是否批准这些更新?(全部批准/逐个审核/编辑)# 先获取当前配置(写入路径新鲜度)
curl -sS "$PAPERCLIP_API_URL/api/agents/{agentId}"
# 使用新的升级路径更新Agent配置
curl -sS -X PATCH "$PAPERCLIP_API_URL/api/agents/{agentId}" \
-H "Content-Type: application/json" \
-d '{
"adapterConfig": { ... 包含新协作部分的更新配置 ... }
}'# 列出待审批项
curl -sS "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/approvals?status=pending"
# 批准
curl -sS -X POST "$PAPERCLIP_API_URL/api/approvals/{id}/approve" \
-H "Content-Type: application/json" \
-d '{"decisionNote": "董事会批准"}'
# 拒绝
curl -sS -X POST "$PAPERCLIP_API_URL/api/approvals/{id}/reject" \
-H "Content-Type: application/json" \
-d '{"decisionNote": "拒绝理由"}'
# 请求修订
curl -sS -X POST "$PAPERCLIP_API_URL/api/approvals/{id}/request-revision" \
-H "Content-Type: application/json" \
-d '{"decisionNote": "请调整X、Y、Z"}'待审批项
─────────────────
1. [招聘] 设计师 — 由@ceo提交
查看:{baseUrl}/{prefix}/approvals/{id}
→ 批准 / 拒绝 / 请求修订
2. [工具] 图标库($12/月) — 由@designer申请
→ 批准 / 拒绝# 列出未完成任务
curl -sS "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/issues?status=todo,in_progress,blocked"
# 获取任务详情
curl -sS "$PAPERCLIP_API_URL/api/issues/{issueId}"
# 获取任务评论
curl -sS "$PAPERCLIP_API_URL/api/issues/{issueId}/comments"
# 创建任务
curl -sS -X POST "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/issues" \
-H "Content-Type: application/json" \
-d '{
"title": "任务标题",
"description": "需要完成的工作",
"status": "todo",
"priority": "medium",
"assigneeAgentId": "{agent-id}",
"projectId": "{project-id}",
"parentId": "{parent-issue-id}"
}'
# 更新任务
curl -sS -X PATCH "$PAPERCLIP_API_URL/api/issues/{issueId}" \
-H "Content-Type: application/json" \
-d '{"status": "done", "comment": "已完成"}'
# 添加评论
curl -sS -X POST "$PAPERCLIP_API_URL/api/issues/{issueId}/comments" \
-H "Content-Type: application/json" \
-d '{"body": "Markdown格式的评论内容"}'
# 搜索议题
curl -sS "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/issues?q=搜索关键词"{PREFIX}-{number}: {标题} [{状态}] → @{经办人}
优先级: {priority}
最新动态: "{最后评论片段...}"
查看: {baseUrl}/{prefix}/issues/{identifier}# 列出所有Agent
curl -sS "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/agents"
# 获取Agent详情
curl -sS "$PAPERCLIP_API_URL/api/agents/{id}"
# 获取Agent配置修订记录(变更历史)
curl -sS "$PAPERCLIP_API_URL/api/agents/{id}/config-revisions"团队概览
─────────────
@ceo (Atlas) — 活跃,上次心跳5分钟前
预算: $45 / $100 (45%)
当前工作: PAP-12 首页重新设计
@frontend-engineer — 活跃,上次心跳2分钟前
预算: $30 / $50 (60%)
当前工作: PAP-15 博客模板# 总体汇总
curl -sS "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/costs/summary"
# 按Agent细分
curl -sS "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/costs/by-agent"
# 按项目细分
curl -sS "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/costs/by-project"
# 可选日期范围
curl -sS "$PAPERCLIP_API_URL/api/companies/$PAPERCLIP_COMPANY_ID/costs/summary?from=2026-03-01&to=2026-03-31"本月成本
────────────────
总计: $145.23 / $500.00 (29%)
按Agent细分:
@ceo $45.12 (31%)
@frontend-eng $62.30 (43%)
@content-strat $37.81 (26%)# 列出议题的工作成果
curl -sS "$PAPERCLIP_API_URL/api/issues/{issueId}/work-products"
# 查看文档
curl -sS "$PAPERCLIP_API_URL/api/issues/{issueId}/documents/{key}"
# 查看文档修订记录
curl -sS "$PAPERCLIP_API_URL/api/issues/{issueId}/documents/{key}/revisions"工作成果 — PAP-12
──────────────────────
1. 首页原型图 [ready_for_review] — 工件
查看: {baseUrl}/{prefix}/issues/PAP-12#document-mockup
2. 功能分支 [active] — 分支
URL: https://github.com/...# 修改前务必重新获取
curl -sS "$PAPERCLIP_API_URL/api/agents/{id}"
# 然后更新
curl -sS -X PATCH "$PAPERCLIP_API_URL/api/agents/{id}" \
-H "Content-Type: application/json" \
-d '{"adapterConfig": { ... 更新后的配置 ... }}'instructionsFilePath{baseUrl}/{prefix}/agents/{agentUrlKey}curl -sS "$PAPERCLIP_API_URL/api/agents/{id}/config-revisions"配置历史 — @designer
──────────────────────────
版本3(2026-03-21 14:30) — 修改:systemPrompt
在专业能力部分添加了用户体验研究
版本2(2026-03-21 10:15) — 修改:budgetMonthlyCents
预算从$50增加到$100
版本1(2026-03-20 16:00) — 初始配置# 获取当前日志
curl -sS "$PAPERCLIP_API_URL/api/issues/{boardIssueId}/documents/decision-log"
# 追加新条目更新
curl -sS -X PUT "$PAPERCLIP_API_URL/api/issues/{boardIssueId}/documents/decision-log" \
-H "Content-Type: application/json" \
-d '{
"title": "Decision Log",
"format": "markdown",
"body": "... 现有内容 ... \n\n## {日期}\n- 新决策\n",
"baseRevisionId": "{当前版本id}"
}'./artifacts/decision-log.md查看: {PAPERCLIP_API_URL}/{prefix}/issues/{identifier}PAP-123: 构建着陆页 [in_progress] → @工程师PAP-315PAP/{prefix}/issues/{identifier}/PAP/issues/PAP-12/{prefix}/agents/{agent-url-key}/{prefix}/approvals/{approval-id}/{prefix}/projects/{project-url-key}/{prefix}/issues/{identifier}#document-{key}| 操作 | 方法 | 端点 |
|---|---|---|
| 列出公司 | GET | |
| 创建公司 | POST | |
| 更新公司 | PATCH | |
| 获取公司 | GET | |
| 仪表板 | GET | |
| 列出Agent | GET | |
| 获取Agent | GET | |
| 更新Agent | PATCH | |
| Agent配置 | GET | |
| 配置修订记录 | GET | |
| 招聘Agent | POST | |
| 触发心跳 | POST | |
| 列出议题 | GET | |
| 创建议题 | POST | |
| 获取议题 | GET | |
| 更新议题 | PATCH | |
| 议题评论 | GET | |
| 添加评论 | POST | |
| 议题文档 | GET | |
| 获取文档 | GET | |
| 创建/更新文档 | PUT | |
| 工作成果 | GET | |
| 列出审批项 | GET | |
| 批准 | POST | |
| 拒绝 | POST | |
| 请求修订 | POST | |
| 成本汇总 | GET | |
| 按Agent细分成本 | GET | |
| 按项目细分成本 | GET | |
| 适配器文档 | GET | |
| 适配器详情 | GET | |
| Agent图标 | GET | |
| 设置指令路径 | PATCH | |
| 搜索议题 | GET | |