Skip to content

Development

Build, test, and lint the csp Cargo workspace, and where the pieces live in the repository.

Updated View as Markdown

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   # lint

Run 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)
Navigation

Type to search…

↑↓ navigate↵ selectEsc close