Skip to content

RecruiterStack v2: 10-agent swarm with Paperclip dashboard + Forge runtime - #1

Open
jbellsolutions wants to merge 3 commits into
mainfrom
v2-agent-swarm
Open

jbellsolutions wants to merge 3 commits into
mainfrom
v2-agent-swarm

Conversation

@jbellsolutions

Copy link
Copy Markdown
Owner

Summary

  • Repo now leads with the 10 agents and a 60-second flow: paste link in Claude Code → 5 NL questions → Activate Agents → Paperclip dashboard at localhost:3100.
  • 10 agent specs in agents/<slug>/SPEC.md are the single source of truth; paperclip/agents/*.json are auto-generated from them via npm run build:paperclip.
  • New orchestrator/ (TypeScript) auto-bootstraps Paperclip via npx paperclipai onboard --yes, registers agents over its HTTP API, and emits a copy-pasteable fallback per agent if Paperclip isn't reachable.
  • /api/plan-chat now returns recommendedAgents (computed from selectedProblems + priority via config/pain-to-agent.json); /api/spawn is the new endpoint the planner calls when the user clicks Activate.
  • README rewritten to lead with the 10 agents and the 60-second start.

Test plan

  • npm install && npm run dev boots the planner on :3000
  • Walk the NL intake on /plan claiming 2 specific pain points (e.g. "candidate ghosting" + "recruiter productivity") → confirm an "Activate Agents" card appears with the right subset checked
  • Click Activate without Paperclip running → confirm the fallback spec block prints with npx paperclipai onboard --yes instructions
  • Run npx paperclipai onboard --yes separately → click Activate again → confirm dashboard opens at localhost:3100 with the agents staffed
  • npm run build:paperclip regenerates the 10 JSON files cleanly
  • npx tsc --noEmit and npx next build both pass

🤖 Generated with Claude Code

…ntime

The repo now leads with the 10 agents, the NL flow ends in Activate Agents,
and Paperclip auto-bootstraps as the local dashboard at localhost:3100.

- 10 agent specs in agents/<slug>/SPEC.md (single source of truth)
- config/pain-to-agent.json maps the 13 problem categories -> agent slugs
- orchestrator/ wires the diagnosis to Paperclip (auto-bootstrap, register, fallback)
- paperclip/ ships a plugin with the recruiting org chart (auto-generated from SPEC.md)
- /api/plan-chat now returns recommendedAgents
- /api/spawn endpoint kicks off the spawn into Paperclip with graceful fallback
- /plan UI gets an Activate Agents card that opens the dashboard
- README rewrite leads with the 10 agents and 60-second flow

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@cursor

cursor Bot commented Apr 27, 2026

Copy link
Copy Markdown

You have used all of your free Bugbot PR reviews.

To receive reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.

jbellsolutions and others added 2 commits April 26, 2026 20:15
Keeps response shape consistent so the planner UI shows the Activate Agents
card even when ANTHROPIC_API_KEY isn't set, as long as the user has selected
problems in the sidebar.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Endpoint is POST /api/companies/{companyId}/agents (not /api/agents)
- camelCase fields: reportsTo, budgetMonthlyCents, adapterType, adapterConfig
- adapterType "claude_local"; adapterConfig points cwd at repo root and
  instructionsFilePath at agents/<slug>/SPEC.md
- dangerouslySkipPermissions defaults to false (safe)
- role normalizes to "general"; title goes in title; staffing role goes in
  capabilities. Schema source: paperclipai/paperclip packages/shared/src/validators/agent.ts.
- Adds GET /api/companies fetch with PAPERCLIP_COMPANY_ID env override and
  preference for a company named "RecruiterStack" before falling back to
  the first active one.

Live-tested: HTTP 201 from a running paperclipai instance; agent appeared
in the dashboard with correct adapter config.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant