This is a monorepo containing:
packages/plugin- Claude Code plugin (distributed via git/npm)packages/go- Go implementation (TUI, CLI tools, orchestrator)
The Go binary is built and distributed from packages/go/:
cd packages/go
make build # Build the binary
make install # Install to /usr/local/binUsers can also install via the install script:
curl -fsSL https://raw.githubusercontent.com/Jayphen/coders/go-rewrite/packages/go/install.sh | bashWhen to deploy: When files in packages/plugin/ are changed.
The plugin is installed via Claude's plugin system from the git repo. For most changes, just push to git:
git add -A && git commit -m "feat: description" && git pushUsers update via /plugin:update coders.
If npm distribution is needed (rare - only for users installing via npm):
cd packages/plugin
npm version patch --no-git-tag-version
# Also update .claude-plugin/plugin.json version to match!
cd ../..
git add -A && git commit -m "chore: release @jayphen/coders vX.X.X" && git push
cd packages/plugin
npm publish --access public --otp=<OTP>The plugin has two version files that must stay in sync:
packages/plugin/package.jsonpackages/plugin/.claude-plugin/plugin.json
Always update both when bumping versions.
pnpm install # Install plugin dependencies
pnpm plugin:test # Test the plugin locallyAll Go development happens in packages/go/. The Makefile provides comprehensive build and development targets:
cd packages/go
# Building
make build # Build for current platform (output: bin/coders)
make build-all # Build for all platforms (darwin/linux, amd64/arm64)
make clean # Remove build artifacts
# Testing
make test # Run all tests
make test-coverage # Run tests with coverage report (generates coverage.html)
# Code Quality
make fmt # Format code with gofmt
make lint # Run golangci-lint
make tidy # Tidy Go module dependencies
# Running
make run # Build and run the TUI
make list # Build and run the list command
./bin/coders --help # Run the built binary directly
# Development Workflow
make watch # Auto-rebuild on file changes (requires watchexec)
make install # Install to $GOPATH/bin/coders
# Help
make help # Show all available targetsDevelopment workflow:
- Make changes to Go code
- Run
make testto verify tests pass - Run
make fmtto format code - Run
make runor./bin/coders tuito test the TUI - Run
make installto install locally for system-wide testing
cd packages/plugin
node skills/coders/scripts/main.js <command>cd packages/go
# Quick iteration cycle
make build && ./bin/coders spawn claude --task "test task"
make build && ./bin/coders tui # Launch the TUI
make build && ./bin/coders list # List all sessions
# Or use convenience targets
make run # Builds and runs TUI
make list # Builds and runs list commandBuild artifacts:
- Binary output:
packages/go/bin/coders - Test coverage:
packages/go/coverage.html - Cross-platform builds:
packages/go/bin/coders-{os}-{arch}