Skip to content

Port Scout as @corbits/scout-agent - #235

Merged
TheGreatAxios merged 6 commits into
mainfrom
cl-6499-scout
Aug 21, 2026
Merged

TheGreatAxios merged 6 commits into
mainfrom
cl-6499-scout

Conversation

@TheGreatAxios

@TheGreatAxios TheGreatAxios commented Aug 21, 2026 •

Copy link
Copy Markdown
Contributor

Ports Scout from the scout repo into workbench as a self-contained agent package, so @Scout does real research work in workbench chat.

Only the declaration half comes across — the system prompt and tool declarations. Scout's own design notes record that the core/surface split which would make its internals portable isn't built yet, and that its tools compile into that repo's sidecar rather than arriving as pinned packages, so the tool bodies are wired to infrastructure workbench already has instead of being lifted.

launch-diligence-brief and launch-fact-check are deliberately left out: they front roughly 2,600 lines of diligence workflow that is not portable in this pass. The system prompt is adapted to match, so Scout never offers a brief it cannot produce — a declared tool that fails when called is worse than one that isn't offered.

Packaging follows the owner's direction that each ported agent becomes its own package, carrying everything for that agent in one place.

What's wired, and what's genuinely working end-to-end

Tool Wired to Status
memory_search, memory_add, memory_list @corbits/memory-tools (existing, unmodified) Real, off-the-shelf
web_search @corbits/web-search-tools, Exa-backed, credential handle exa (existing, unmodified) Real, off-the-shelf; missing credential returns an honest "not connected" result, never a silent failure
scout_save_artifact, scout_list_recent_artifacts New, this package (src/artifact-tool.ts), against @corbits/artifacts-hub's workflow-artifacts HTTP surface Real, but narrower than the original — create + list-recent only, no search-by-field or read-by-id, since that's all the existing HTTP surface offers
launch-diligence-brief, launch-fact-check — Deferred, dropped from both the tool list and the prompt

Gap against the Scout people already know

This is the conversational researcher, not the full diligence pipeline. Anyone expecting a generated diligence brief will not find it here yet — the prompt says so plainly rather than promising one. The owner must connect: the Exa MCP preset (keyless, under Plugins) for web_search, and have the Library/artifacts plane mounted (CL-5291) for the artifact tools. Registering SCOUT_AGENT_DEFINITION into a live workbench via agent-directory's create path is a follow-up, not done here — this package is the portable definition only.

Verification

Ran, package-scoped only (a memory-pressure issue on the dev machine ruled out full-workspace commands):

  • bun test in packages/scout-agent — 15 pass across 4 files, including a red/green pair proving the actual @corbits/web-search-tools path: a stubbed Exa search answers a research question, and a missing credential surfaces an honest "not connected" result.
  • bun run typecheck in packages/scout-agent — clean.
  • bun run check:tool-package-pins (repo-root, but a lightweight static scan, not a build) — ok, 24 pins across 765 files.

Not run, per the memory-pressure constraint: repo-root bun run check (typecheck+lint+test across the whole workspace), repo-root lint, check:packages (builds/packs every workspace package — confirmed heavy after a partial run), check:licenses. Left to CI.

Ports the declaration half — system prompt and tool declarations — and wires
the tools to infrastructure workbench already has rather than lifting scout's
sidecar internals, which its own design notes say are not yet portable. The
diligence-brief and fact-check launchers are left out and the prompt is
adapted to match, so Scout never offers work it cannot do.
The bundle id already names Scout, so the scout_ prefix pushed the qualified
tool name past the 64-character limit the tool registry enforces.
The integration suite under test/ was outside the project service, so lint
could not parse it.
@TheGreatAxios
TheGreatAxios merged commit 5274362 into main Aug 21, 2026
2 checks passed
@TheGreatAxios
TheGreatAxios deleted the cl-6499-scout branch August 25, 2026 15:29
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