Skip to content

Latest commit

 

History

History
147 lines (115 loc) · 6.01 KB

project-discovery.md

File metadata and controls

147 lines (115 loc) · 6.01 KB

Project Discovery

  • Last Updated: 2026-04-16

Repository

  • Default branch: origin/main
  • Docs: docs/
  • ADRs: docs/adrs/
  • README: README.md

testdouble-skillwalker (Workspace Root)

  • Root: repository root
  • Language: TypeScript (ESNext target, strict mode)
  • Package manager: Bun 1.4.2 (pinned by "packageManager" in the root package.json)
  • Dependency manifest: package.json
  • Lock file: bun.lock

Frameworks and Tooling

  • Test: Vitest ^5.0.1
  • DB: DuckDB (@duckdb/node-api)
  • Build: Bun compile + Vite 8
  • Task runner: Makefile

Commands and Tests

  • Install: bun install
  • Test (unit): bun run vitest run
  • Test (integration): bun run vitest run --config vitest.integration.config.ts
  • Test (all): make test
  • Test (compiled binary smoke): make build && bun run test:smoke
  • Build: make build
  • Dev server: make dev
  • Test file pattern: *.test.ts, *.integration.test.ts, *.unit.test.ts

Workspace Packages

@testdouble/skillwalker-cli

  • Root: packages/cli/
  • Dependency manifest: packages/cli/package.json
  • CLI framework: Yargs
  • Compiled binary: skillwalker
  • Depends on: @testdouble/skillwalker-execution, @testdouble/skillwalker-data, @testdouble/sandbox-integration, @testdouble/claude-integration (workspace)
  • Test directory: co-located in packages/cli/src/

@testdouble/skillwalker-execution

  • Root: packages/execution/
  • Dependency manifest: packages/execution/package.json
  • Owns: test-run pipeline, test-eval pipeline, SCIL/ACIL improvement loops, error hierarchy, path config
  • Depends on: @testdouble/skillwalker-data, @testdouble/skillwalker-evals, @testdouble/claude-integration, @testdouble/sandbox-integration (workspace)
  • Test directory: co-located in packages/execution/src/

@testdouble/skillwalker-data

  • Root: packages/data/
  • Dependency manifest: packages/data/package.json
  • DB: DuckDB (@duckdb/node-api)
  • Test directory: co-located in packages/data/src/

@testdouble/skillwalker-evals

  • Root: packages/evals/
  • Dependency manifest: packages/evals/package.json
  • Owns: boolean evals, LLM judge scoring, rubric parsing
  • Depends on: @testdouble/skillwalker-data, @testdouble/claude-integration (workspace)
  • Test directory: co-located in packages/evals/src/

@testdouble/claude-integration

  • Root: packages/claude-integration/
  • Dependency manifest: packages/claude-integration/package.json
  • Owns: Claude CLI execution, plugin directory resolution
  • Depends on: @testdouble/sandbox-integration, @testdouble/bun-helpers (workspace)
  • Test directory: co-located in packages/claude-integration/src/

@testdouble/sandbox-integration

  • Root: packages/sandbox-integration/
  • Dependency manifest: packages/sandbox-integration/package.json
  • Owns: Test Sandbox lifecycle, command execution
  • Depends on: @testdouble/bun-helpers (workspace)

@testdouble/skillwalker-web

  • Root: packages/web/
  • Dependency manifest: packages/web/package.json
  • Web server: Hono
  • Frontend: React 19 + React Router 7
  • CSS: Tailwind CSS v4
  • Build: Vite 8 (@vitejs/plugin-react, @tailwindcss/vite)
  • Compiled binary: skillwalker-web
  • Depends on: @testdouble/skillwalker-data (workspace)
  • Test directory: co-located in packages/web/src/

@testdouble/bun-helpers

  • Root: packages/bun-helpers/
  • Owns: cross-runtime path resolution (currentDir, resolveRelativePath)
  • No workspace dependencies

@testdouble/test-fixtures

  • Root: packages/test-fixtures/
  • No runtime dependencies
  • Exports fixture data via load-fixtures.ts and wildcard sub-path exports

Infrastructure

  • Build output: build/ (compiled skillwalker and skillwalker-web binaries plus their runtime assets)
  • Native library: libduckdb.dylib (platform-specific, copied into build/ beside the binaries)
  • Analytics store: analytics/ (Parquet files)
  • Test output: output/ (timestamped JSONL run data)
  • Test Sandbox: packages/sandbox-integration/ (see docs/sandbox-integration.md)
  • Evals: evals/ (11 evals)

Documentation

  • docs/skillwalker-architecture.md — System architecture, package boundaries, data flow, and dependency graph
  • docs/sandbox-integration.md — Test Sandbox API, lifecycle, and consumer patterns
  • docs/llm-judge.md — LLM-as-judge evaluation approach
  • docs/parquet-schema.md — DuckDB/Parquet table schemas
  • docs/rubric-evals-guide.md — rubric-based evaluation guide
  • docs/scil-evals-guide.md — SCIL evaluation guide
  • docs/skill-call-improvement-loop.md — iterative skill improvement feedback loop
  • docs/test-scaffolding.md — scaffold directory setup for sandbox tests
  • docs/evals-reference.md — tests.json field reference
  • docs/write-skill-eval-rubric.md — authoring skill rubric files
  • docs/write-agent-eval-rubric.md — authoring agent rubric files
  • docs/script-extraction.md — extracting mechanical steps from skills into shell scripts
  • docs/write-scil-evals.md — authoring SCIL eval configs
  • docs/write-acil-evals.md — authoring ACIL eval configs
  • docs/agent-call-improvement-loop.md — iterative agent description improvement feedback loop
  • docs/execution.md — execution package: test-run pipeline, test-eval, SCIL/ACIL loops, error hierarchy
  • docs/cli.md — CLI package: thin Yargs wrapper, command definitions, path resolution
  • docs/data.md — data package: types, config parsing, JSONL I/O, DuckDB analytics
  • docs/evals.md — evals package: boolean evals, LLM judge scoring, orchestrator
  • docs/claude-integration.md — Claude CLI wrapper API, argument construction, sandbox delegation
  • docs/sandbox-integration-package.md — sandbox integration package: full API, error handling, testing
  • docs/web.md — web dashboard: Hono API, React SPA, analytics views
  • docs/bun-helpers.md — cross-runtime path resolution utilities
  • docs/test-fixtures.md — shared test fixture data, loadFixtures utility
  • docs/adrs/ — architecture decision records
  • docs/planning/ — planning and design documents