en un clic
looper-go-dev
// Looper-Go development workflows: build, test, run, debug, and manage the looper-go project. Use when working on looper-go codebase, running tests, building binaries, or debugging issues.
// Looper-Go development workflows: build, test, run, debug, and manage the looper-go project. Use when working on looper-go codebase, running tests, building binaries, or debugging issues.
| name | looper-go-dev |
| description | Looper-Go development workflows: build, test, run, debug, and manage the looper-go project. Use when working on looper-go codebase, running tests, building binaries, or debugging issues. |
Looper-Go is a Go implementation of the autonomous AI loop runner. This skill covers common development workflows.
looper-go/
├── cmd/looper/ # CLI entry point
├── internal/
│ ├── config/ # Configuration loading
│ ├── agents/ # Agent runners
│ ├── loop/ # Main orchestration
│ ├── todo/ # Task file handling
│ ├── prompts/ # Prompt templates
│ ├── logging/ # JSONL logging
│ └── hooks/ # Post-iteration hooks
├── prompts/ # Bundled prompt templates
└── to-do.json # Task file (runtime)
# Build binary
go build ./cmd/looper
# Build to custom location
go build -o ~/bin/looper ./cmd/looper
# Build for multiple platforms
go build -o bin/looper-linux ./cmd/looper
GOOS=darwin go build -o bin/looper-macos ./cmd/looper
GOOS=windows go build -o bin/looper.exe ./cmd/looper
# Run all tests
go test ./...
# Run with coverage
go test -cover ./...
# Run specific package
go test ./internal/loop
# Verbose output
go test -v ./internal/loop
# Run make test (includes smoke tests)
make test
# Default run (uses to-do.json in current dir)
looper run
# Specify max iterations
LOOPER_MAX_ITERATIONS=5 looper run
# Run with specific task file
looper --task-file path/to/tasks.json run
# View logs
looper tail
# List tasks
looper ls
# Show config
looper config
# Check dependencies
looper doctor
# Enable debug logging
LOOPER_DEBUG=1 looper run
# View JSONL logs
looper tail
# View specific run
looper tail --run <run-id>
# Validate task file
looper validate
# Format task file
looper fmt
Edit code in internal/ or cmd/ as needed.
# Run unit tests
go test ./...
# Run smoke tests
make test
# Run live test
~/.codex/skills/looper-live-test/scripts/run-live-test.sh
# Check status
git status
# Run pre-commit hooks (if installed)
pre-commit run --all-files
# Commit
git commit -m "feat: description"
# Build
go build ./cmd/looper
# Install to PATH
go install ./cmd/looper
.looper/config.json - Project-specific~/.config/looper/config.json - User configLOOPER_*){
"max_iterations": 100,
"agent": {
"type": "claude",
"model": "claude-3-5-sonnet-20241022"
},
"paths": {
"log_dir": "./looper-logs"
}
}
| Variable | Purpose |
|---|---|
LOOPER_MAX_ITERATIONS | Max loop iterations |
LOOPER_DEBUG | Enable debug logging |
LOOPER_AGENT_TYPE | Agent type (codex, claude) |
LOOPER_TASK_FILE | Path to task file |
CODEX_JSON_LOG | Codex JSON log mode (legacy) |
# Clean and rebuild
go clean -cache
go mod tidy
go build ./cmd/looper
# Run verbose to see details
go test -v ./...
# Check specific package
go test -v ./internal/loop
# Check config
looper config
# Verify agent binary exists
which codex
which claude
# Check in config
cat .looper/config.json | jq '.agent'
mkdir internal/feature
# Create feature.go
# Create feature_test.go
go test ./internal/feature
Edit internal/loop/loop.go to use new feature.
ARCHITECTURE.md if structural changeREADME.md if user-facingUse the release-runbook skill:
~/.codex/skills/release-runbook/scripts/release.sh --version 1.2.3 --test-cmd "make test"
gofmt)ARCHITECTURE.md - Full architecture documentationREADME.md - User documentationCONTRIBUTING.md - Contribution guidelinesAI_POLICY.md - AI contribution policyLooper-Go development workflows: build, test, run, debug, and manage the looper-go project. Use when working on looper-go codebase, running tests, building binaries, or debugging issues.
Run a live Looper-Go smoke test by creating a temporary project (PROJECT.md + to-do.json), executing looper for one iteration, observing output, and reporting results. Use when verifying looper-go behavior or demonstrating a live run.
Run a live Looper-Go smoke test by creating a temporary project (PROJECT.md + to-do.json), executing looper for one iteration, observing output, and reporting results. Use when verifying looper-go behavior or demonstrating a live run.