Open
Conversation
Replace Makefile with openharness — a custom agent CLI built on @mariozechner/pi-coding-agent SDK. Sandbox management tools registered as first-class built-in Pi tools with slash commands and conversational orchestration. Includes vitest, eslint, prettier, husky pre-commit hooks. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
TypeScript CLI wrapping Pi's main() with 11 sandbox management tools registered as first-class Pi tools + slash commands: - sandbox_quickstart, sandbox_build, sandbox_rebuild, sandbox_run - sandbox_shell, sandbox_stop, sandbox_clean, sandbox_push - sandbox_list, sandbox_heartbeat, sandbox_worktree Includes vitest (42 tests), eslint, prettier, husky pre-commit hooks. Coexists alongside Makefile during migration. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ction Intercept --help and --version to show openharness-branded output with dedicated Sandbox Commands section (Lifecycle, Access, Registry, Heartbeat, Git) and Sandbox Tools listing for LLM mode. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add direct CLI subcommands (openharness list, quickstart, build, shell, stop, clean, etc.) that execute tools and exit — no TUI needed - Restructure --help to show CLI commands as primary interface, with Agent Mode as secondary - Remove Makefile — CLI fully replaces it Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Update banner.json and custom-banner extension defaults from "Sandboxes Project" to "Open Harness — AI-Powered Sandbox Orchestrator". Add OPENHARNESS_CODING_AGENT_DIR env var support. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Rename workspace/.pi/ directory and all internal references to .openharness/ for consistent branding. Updates banner extension config paths, global fallback dir, README. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Core CLI (cli/) is now a lean Pi agent — no sandbox tools bundled. Sandbox tools live in packages/sandbox/ as a Pi package installable via: openharness install @openharness/sandbox - Move tools/, lib/, __tests__ from cli/src/ to packages/sandbox/src/ - Create packages/sandbox/extensions/sandbox.ts (Pi extension) - Core CLI dynamically imports @openharness/sandbox, graceful fallback - 42 tests pass in sandbox package, core builds clean Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
feat: Replace Makefile with openharness CLI (Pi SDK)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…ct root Mount host ~/.claude into devcontainer for persistent auth tokens, add CLAUDE_DANGEROUSLY_SKIP_PERMISSIONS env var, and fix ownership in entrypoint. Move .openharness/ from workspace/ to project root with symlink so config is available at both build time (COPY) and runtime (bind-mount). Update Docker, compose, README, and workspace AGENTS.md accordingly. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…update - Add optional cloudflared installation to install/setup.sh - Add reusable cloudflared-tunnel.sh for named tunnel setup - Add .openharness/config.json template for compose overrides - Update provision skill with cloudflared and layout docs - Gitignore .claude/screenshots/ Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
npm run setup installs deps, builds cli + sandbox packages, and links the openharness CLI globally. Replaces manual npm link workflow. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Add IDENTITY.md, USER.md, TOOLS.md, HEARTBEAT.md templates. Refactor AGENTS.md to operating procedures, SOUL.md to personality only. Clean MEMORY.md to exclude static stack info. All future agents will start with clear separation of concerns. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
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.
Summary
cli/): new CLI built on Pi Agent SDK with subcommands for sandbox lifecycle management, replacing the root Makefilepackages/sandbox/): reusable library with Docker orchestration tools, config management, and sandbox extensions.devcontainer/): Debian-based orchestrator container with Claude Code, Codex CLI, Docker, Node.js, Bun, uv, and GitHub CLI pre-installed.github/workflows/ci.yml): lint + test workflow for both packages with Husky pre-commit hooks.pi/→.openharness/, updated banner and extension namingTest plan
npm installandnpm run buildincli/andpackages/sandbox/npm testpasses in both packagesdocker compose -f .devcontainer/docker-compose.yml up -d --buildstarts cleanlydocker exec orchestrator claude --versionandcodex --versionreturn versions🤖 Generated with Claude Code