Port Scout as @corbits/scout-agent - #235
Merged
Merged
Conversation
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.
7 tasks
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.
3 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Ports Scout from the scout repo into workbench as a self-contained agent package, so
@Scoutdoes 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-briefandlaunch-fact-checkare 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
memory_search,memory_add,memory_list@corbits/memory-tools(existing, unmodified)web_search@corbits/web-search-tools, Exa-backed, credential handleexa(existing, unmodified)scout_save_artifact,scout_list_recent_artifactssrc/artifact-tool.ts), against@corbits/artifacts-hub's workflow-artifacts HTTP surfacelaunch-diligence-brief,launch-fact-checkGap 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. RegisteringSCOUT_AGENT_DEFINITIONinto a live workbench viaagent-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 testinpackages/scout-agent— 15 pass across 4 files, including a red/green pair proving the actual@corbits/web-search-toolspath: a stubbed Exa search answers a research question, and a missing credential surfaces an honest "not connected" result.bun run typecheckinpackages/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.