Files
cxyback bb4a2b3e53 Restructure repo and add named agents (#81)
- Move verticals from repo root into plugins/vertical-plugins/ and partner
  plugins into plugins/partner-built/
- Add 10 named, self-contained agent plugins under plugins/agent-plugins/
  (Pitch Agent, Market Researcher, Earnings Reviewer, Model Builder,
  Meeting Prep, GL Reconciler, Month-End Closer, Statement Auditor,
  Valuation Reviewer, KYC Screener) — each bundles its own skills so it
  installs standalone
- Add managed-agent-cookbooks/ (one per agent) with subagent isolation
  and steering examples for /v1/agents deployment
- Add fund-admin and operations verticals so the finance-ops/onboarding
  agents ship real domain skills
- Add scripts/ (check.py manifest lint, sync-agent-skills.py,
  deploy-managed-agent.sh, orchestrate.py reference loop,
  test-cookbooks.sh)
- Add .github/workflows/secret-scan.yml (gitleaks + internal-ref grep)
- Tighten agent tool grants to declared MCPs only — no Bash, WebFetch,
  or undeclared mcp__* references in any agent
- Add not-investment-advice disclaimer to README
- Rename claude-in-office to claude-for-msft-365-install (content
  unchanged)
2026-05-05 10:58:18 -04:00
..

Model Builder — managed-agent template

Overview

DCF, LBO, 3-statement, comps — built as a file artifact. Same source as the model-builder Cowork plugin — this directory is the Managed Agent cookbook for POST /v1/agents.

Deploy

export ANTHROPIC_API_KEY=sk-ant-...
export CAPIQ_MCP_URL=... DALOOPA_MCP_URL=...
../../scripts/deploy-managed-agent.sh model-builder

Steering events

See steering-examples.json.

Security & handoffs

Task-decomposition split — inputs come from trusted MCPs, so the split is about artifact isolation and re-verification. Exactly one worker holds Write:

Leaf Tools Connectors
data-puller Read, Grep CapIQ, Daloopa (read-only)
builder (Write-holder) Read, Write, Edit, Bash (sandboxed) None
auditor Read, Grep None

auditor re-checks ties and balances after builder writes ./out/model.xlsx.

Handoff: when invoked from earnings-reviewer or pitch-agent, the calling agent's handoff_request is routed here by scripts/orchestrate.py.