Sandbox
@vinta/hal-9000

MacOS agent workflow harness with dotfiles and skills

HAL 9000 is an opinionated setup for Claude Code, Codex, and similar agents on macOS. It combines agent instructions, skills, plugins, statusline tooling, and Ansible playbooks so your machine and your agent follow the same workflow.

129 stars25 forksPythonUpdated 7d ago
Who it's for

Builders who want Claude Code or Codex to use the same rules, skills, and machine setup every time.

What it delivers

You can set up a consistent agent-led dev environment without assembling the pieces by hand.

What it does

Agent skills bundle

`skills/` contains reusable skills like commit, pr, refactor-memory, and simple-english.

Claude Code and Codex instructions

`dotfiles/.claude` and `dotfiles/.codex` hold global rules, settings, and memory files for agent sessions.

Claude Code plugins

`plugins/` includes `hal-output-styles`, `hal-session-auto-rename`, `hal-statusline`, and `hal-voice`.

Dev environment bootstrap

`playbooks/` contains Ansible roles for Python, Node.js, Bun, Solidity, Docker, Kubernetes, AWS, and GCP.

Dotfile sync and backup CLI

`bin/hal.py` and `bin/hal` provide `update`, `sync`, `link`, `unlink`, `backup`, and `restore` commands.

Statusline setup

`scripts/install-hal-statusline.sh` installs the Claude Code statusline integration.

How to get it

  1. 1Google Cloud
    curl -sL https://raw.githubusercontent.com/vinta/hal-9000/main/bin/open-the-pod-bay-doors.sh | bash
  2. 2refactor-skill: Refactors a skill by simplifying it instead of complicating it
    /plugin marketplace add vinta/hal-9000
    /plugin install hal-skills@hal-9000
  3. 3If you want to use them in Codex or other coding agents
    npx skills add vinta/hal-9000
  4. 4hal-voice: Play HAL 9000 voice clips on Claude Code hook events
    /plugin marketplace add vinta/hal-9000
    /plugin install hal-output-styles@hal-9000
    /plugin install hal-session-auto-rename@hal-9000
    /plugin install hal-voice@hal-9000
  5. 5Plus a grammar check on every prompt you type, with explanations in Traditional Chinese
    curl -sL https://raw.githubusercontent.com/vinta/hal-9000/main/scripts/install-hal-statusline.sh | bash
  6. 6Run
    make install                          # Install dev dependencies and pre-commit hooks
    make test                             # Run tests
    make hal-completion                   # Regenerate zsh completion after modifying bin/hal.py
    hal sync                              # Update local completion

README

HAL 9000

HAL 9000

Opinionated AI coding agent and dev environment automation for macOS that dominates your dev setup like cats rule the Internet.

This project is named after Arthur C. Clarke's 2001: A Space Odyssey, a heuristic algorithmic computer designed for sentient processing and total mission control.

Bootstrap

All-in-one command to set up:

curl -sL https://raw.githubusercontent.com/vinta/hal-9000/main/bin/open-the-pod-bay-doors.sh | bash

Components

Dotfiles

Tool configs hardened against supply chain attacks and tuned for better DX:

CLAUDE.md / AGENTS.md

Dogmatic yet meticulously crafted global instructions for agentic coding:

Also see:

Skills

Agentic skills sharpened by daily use:

  • commit: Splits your changes into atomic conventional commits, hunk by hunk if needed
  • pr: Opens a PR, rewrites a PR, or waits for CI and merges it, in seconds on a cheap model
  • fuck-over-engineering: Ranks what to cut in your codebase, deletes only what you pick
  • best-practices: Searches the web for the recommended way and common gotchas
  • blindspot: Interviews you to turn unknown unknowns into questions you can prompt with
  • simple-english: Rewrites text in Global English: plain words, still native-sounding
  • write-like-me: Drafts or rewrites English prose in my own voice at native fluency
  • audit-claude-settings: Audits your Claude Code settings against the latest docs
  • refactor-claude-md: Refactors a CLAUDE.md so every line earns its always-loaded cost
  • refactor-agents-md: Refactors an AGENTS.md the same way, for Codex
  • refactor-memory: Prunes stale Claude Code auto memory and regroups the MEMORY.md index
  • refactor-skill: Refactors a skill by simplifying it instead of complicating it
/plugin marketplace add vinta/hal-9000
/plugin install hal-skills@hal-9000

If you want to use them in Codex or other coding agents:

npx skills add vinta/hal-9000

Claude Code Plugins

Plugins that wire their own hooks and run themselves:

/plugin marketplace add vinta/hal-9000
/plugin install hal-output-styles@hal-9000
/plugin install hal-session-auto-rename@hal-9000
/plugin install hal-voice@hal-9000

Claude Code Statusline

  • hal-statusline: Show the current model, directory, git branch, and model usage status in statusline
    • Plus a grammar check on every prompt you type, with explanations in Traditional Chinese
curl -sL https://raw.githubusercontent.com/vinta/hal-9000/main/scripts/install-hal-statusline.sh | bash

CLI: hal

hal update                            # Run all Ansible roles to set up the dev environment
hal update --tags python,node         # Run specific Ansible roles
hal link ~/.zshrc                     # Move file into dotfiles/ and symlink it back
hal unlink ~/.zshrc                   # Move file back from dotfiles/ and remove the symlink
hal sync                              # Sync all links
hal sync --force                      # Same, but replace real directories sitting at link destinations
hal backup                            # Back up live data to Dropbox
hal backup --prune                    # Also delete backup files that no longer exist locally, after asking
hal restore                           # Restore live data from Dropbox (overwrites local)
hal open-the-pod-bay-doors            # Open the pod bay doors, please, HAL

Development

make install                          # Install dev dependencies and pre-commit hooks
make test                             # Run tests
make hal-completion                   # Regenerate zsh completion after modifying bin/hal.py
hal sync                              # Update local completion

Demo

Files in the repo

Repository payload24 top-level entries
  • .claude
  • .claude-plugin
  • .github
  • assets
  • bin
  • dotfiles
  • playbooks
  • plugins
  • scripts
  • skills
  • tests
  • videos
  • .ansible-lint
  • .betterleaks.toml
  • .gitattributes
  • .gitignore
  • .pre-commit-config.yaml
  • AGENTS.md
  • CLAUDE.md
  • LICENSE
  • Makefile
  • pyproject.toml
  • README.md
  • uv.lock

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More harnesses

affaan-m/
ECC
affaan-m/ECCHarnesses

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

258k

The job search that runs on your machine. AI job application framework built on Claude Code: evaluate postings, tailor CVs, write cover letters, prep interviews. Fork it and own it.

42k
ruvnet/rufloHarnesses

🌊 The original agent meta-harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory, self-learning intelligence, RAG integration, and native Claude Code / Codex / Hermes and many more Integrated

72k

Practical patterns, starters & CLI tools for loop engineering with AI coding agents. Design systems that prompt and orchestrate agents (inspired by Addy Osmani and Boris Cherny). Includes loop-audit, loop-init, loop-cost.

11k