The library and csp binary are a Cargo workspace. crates/csp holds both the library and the csp binary, which sits behind the default-on cli feature; crates/csp-node holds the napi-rs bindings published as @pleaseai/csp-sdk.
cargo build --release # build the csp binary → target/release/csp
cargo test --workspace # run tests
cargo fmt --all # format
cargo clippy --all-targets --all-features -- -D warnings # lintRun the CLI from source:
cargo run -p code-search-please -- search "query" .Repository layout
| Path | Contents |
|---|---|
crates/csp |
The Rust library and the csp binary (CLI + MCP server). |
crates/csp-node |
napi-rs bindings, shipped as @pleaseai/csp-sdk. |
npm/ |
The @pleaseai/csp npm launcher that execs the platform binary. |
plugins/csp |
The Claude Code / Codex plugin (csp-search sub-agent and skill; MCP server on Codex). |
plugins/csp-mcp |
The Claude Code plugin that registers the MCP server. |
docs/ |
This documentation site (Cloudflare Nimbus). |
Contributing
See CONTRIBUTING.md for the workflow, and the architecture overview for a bird’s-eye view of the crates. Issues and pull requests are welcome at pleaseai/code-search.
Documentation site
The docs live in docs/ and are built with Nimbus:
cd docs
bun install
bun run dev # local preview
bun run build # static build → docs/dist
bun run check # build-free preflight (config, frontmatter, links, types)