Documentation Guide
std::slop is a C++ monorepo for agentic tooling. Choose a guide for the component you want to use; agent setup is not required for every library.

Start here
- Monorepo overview — component map, library quick starts, agent interfaces, and build commands.
- For interactive agent sessions, start with the agent walkthrough.
- For scripting, start with the sl CLI guide.
- For C++ library APIs, use the library guides below.
Use the coding agents
- WALKTHROUGH.md — installation, model authentication, configuration, first sessions, and subquery setup for the agent interfaces.
- sl.md — scripted prompts, database selection, JSON output, and state subcommands.
- mail_mode.md — review-first work with small staging patches, verification, rerolls, and approved finalization.
- mcp-slop-userguide.md — register and use external HTTP and modern stdio MCP tools in the agent runtime.
Build with the C++ libraries
- Markdown parser and renderer — Tree-sitter parsing, ANSI terminal rendering, highlighting, and API examples.
- mcp-api.md — outbound C++ MCP clients, Streamable HTTP, local stdio, bearer tokens, and OAuth helpers.
- MCP client package — revision selection and runnable client examples.
- mcp-server.md — inbound C++ stdio server API, framing limits, tests, and security scope.
Implemented MCPs
This repository includes small MCP servers that demonstrate different use cases:
- Echo MCP server — deterministic, side-effect-free
echotool; also used by the gateway example. - Local workspace MCP — dedicated smoke-test steps; see the MCP user guide for the full tool contract and security limits.
- run_js gateway — bounded JavaScript composition over configured downstream stdio MCP servers. See its implementation status for current verification and follow-up work.
The reusable inbound C++ server library supports stdio only and does not automatically export agent tools. The bundled local workspace MCP is a separate application built on that server library. Configured stdio programs run with the agent user's permissions and environment; the local shell tool is not a sandbox. The outbound client supports Streamable HTTP and modern MCP 2026-07-28 over local stdio. The Markdown library and echo server do not need agent model credentials or a session database.
Agent runtime reference
- OAUTH.md — model OAuth token setup, refresh, and token path overrides.
- CONTEXT.md — global context injection, personas, and skills.
- SESSIONS.md — session isolation, persistence, and cloning behavior.
- SCHEMA.md — the coding-agent runtime's SQLite data model; not a dependency of every library.
- CONTEXT_MANAGEMENT.md — history/windowing strategy.
Develop the monorepo
- Repository layout — libraries, agent entry points, and shared runtime packages.
- Build and test — full Bazel build and test commands.
- CONTRIBUTING.md — code style, formatting, and contribution guidance.
- fuzzing.md — fuzz targets, invariants, and maintenance guidance.
Example Config Files
- example_config.ini — baseline configuration template.
- example_subqueries.ini — example INI sections for specialized
llm_querytools.
Implementation Reference
- impl/subqueries.md — INI-defined
llm_querytool contract. - mcp-server-simple.md — completed MCP server implementation bundles and acceptance checks.
Reading paths
- Interactive agent: walkthrough → model authentication/configuration → sessions and mail workflows.
- Scripted agent: sl CLI guide → prompt/output rules → state and MCP integration guides.
- Library caller: component API guide → example source/build target → supported features and limits.
- Contributor: repository layout → contribution guide → tests and fuzzing.
Content is generated from the repository sources listed above. See the source files for the complete reference.