👻 Spectral Software Solutions - Your codebase just got possessed by supernatural development powers
Project description
👻 Haunted - Spectral Software Solutions
Your codebase just got possessed by supernatural development powers.
Transform your development workflow with an autonomous AI spirit that thinks, codes, and ships features while you focus on the bigger picture. Haunted doesn't just assist - it possesses your repository and handles complete development cycles from planning to deployment.
🌙 No API Séance Required - Seamlessly channels your Claude Code authentication for effortless spectral integration.
🔮 Supernatural Features
- 👻 Spectral Authentication: No API keys needed - channels your Claude Code powers directly
- 🎭 Autonomous Possession: AI takes complete ownership of features from concept to deployment
- 🌙 Concurrent Hauntings: Multiple issues developed simultaneously across your codebase
- 🕯️ Self-Exorcising: When bugs appear, the spirit debugs and fixes itself automatically
- 🦇 Git Manifestation: Automatic branch creation, testing, and merging with ghostly precision
- 👺 Issue-Driven Séances: All development starts from clear issue descriptions and priorities
- 🎃 Spectral Workflow: Complete development lifecycle - Plan → Code → Test → Debug → Ship
🕯️ Summoning Requirements
- Python 3.10+ - The vessel for spectral powers
- Node.js 18+ - Required for Claude Code channeling
- Claude Code CLI - Your gateway to the supernatural realm:
# Install Claude Code CLI
npm install -g @anthropic-ai/claude-code
# Authenticate with the spirit realm (this opens the portal!)
claude login
🎭 Possession Ritual
# Instant spectral possession (recommended)
uvx haunted
# Or summon globally with pipx
pipx install haunted
# For development possession
git clone <repository-url>
cd haunted
uv sync
🌙 The possession is complete! No API keys needed - Haunted channels your Claude Code authentication automatically.
🔮 Confirm the Haunting
# Test the spectral connection
uvx haunted --help
# For pipx installation
haunted --help
🌙 Summoning Your Spectral Developer
1. Begin the Possession
# Invite the spirit into your project
uvx haunted init
# Or if globally installed with pipx
haunted init
This spectral ritual will:
- Manifest
.haunted/sanctuary with database and config - Verify your Git repository is ready for haunting
- Establish supernatural configuration
2. Whisper Your Desires
# Communicate your high-priority wish to the spirit
uvx haunted issue create "Implement user authentication" --priority high --description "Add login/logout functionality with JWT tokens"
# Organize supernatural work into phases
uvx haunted phase create "Phase 1 - Core Features" --description "Essential features for MVP"
# Channel additional requests into specific phases
uvx haunted issue create "Add password reset" --phase <phase-id> --priority medium
3. Release the Autonomous Spirit
# Unleash your spectral developer
uvx haunted start
Your ghostly assistant will:
- Scan for open Issues by supernatural priority
- Manifest Git branches for each spectral task
- Possess your codebase through the complete development cycle
- Automatically merge completed hauntings
4. Monitor Progress
# Check overall status
uvx haunted status
# List all issues
uvx haunted issue list
# View specific issue details
uvx haunted issue show <issue-id>
# View issues by status
uvx haunted issue list --status in_progress
Workflow
Haunted implements the development workflow from docs/DEVELOPMENT_WORKFLOW.md:
- Plan: AI analyzes requirements and creates implementation strategy
- Implement: AI writes code following the plan
- Unit Test: AI creates and runs unit tests
- Fix Issues: AI fixes any test failures
- Integration Test: AI runs integration tests
- Diagnose: If integration tests fail, AI diagnoses and replans
- Done: Issue completed and merged
Commands
Core Commands
uvx haunted init- Initialize Haunted in current projectuvx haunted start- Start the AI daemonuvx haunted stop- Stop the daemonuvx haunted status- Show current status
Issue Management
uvx haunted issue create <title>- Create new issueuvx haunted issue list- List all issuesuvx haunted issue show <id>- Show issue detailsuvx haunted issue comment <id> <message>- Add comment to issue
Phase Management
uvx haunted phase create <name>- Create new phaseuvx haunted phase list- List all phases
Configuration
Configuration is stored in .haunted/config.yaml:
api:
# No API key needed! Uses Claude Code authentication
model: claude-3-5-sonnet-20241022 # Claude Code model
max_concurrent_issues: 3
rate_limit_retry: true
daemon:
scan_interval: 30 # seconds
max_iterations: 3 # max workflow cycles per issue
git:
auto_merge: true
auto_commit: true
database:
url: sqlite:///.haunted/haunted.db
Architecture
haunted/
├── cli/ # Command-line interface
├── core/ # Core business logic
│ ├── claude_wrapper.py # Claude Code SDK integration
│ ├── workflow.py # Workflow engine
│ ├── database.py # Database management
│ └── git_manager.py # Git operations
├── models/ # SQLModel data models
├── daemon/ # Background service
├── mcp/ # MCP tools for Claude
└── utils/ # Utilities and config
Development Workflow Integration
Haunted is designed to work with your existing development workflow:
- Create Issues for features, bugs, or tasks
- Let AI work - Haunted processes Issues autonomously
- Review Results - Check AI's work in Git branches
- Provide Feedback - Add comments to blocked Issues
- Merge & Deploy - Completed Issues are auto-merged
Git Branch Strategy
- main: Production branch
- phase/: Phase branches for organizing work
- issue/: Individual Issue branches
- Auto-merge: Issues -> Phases -> Main (when ready)
MCP Tools
Claude has access to comprehensive tools:
- File operations (read, write, list)
- Command execution
- Git operations
- Issue management
- Code search and analysis
Troubleshooting
Common Issues
- Claude Code not authenticated: Run
claude loginfirst - Claude Code not installed: Install with
npm install -g @anthropic-ai/claude-code - Python version < 3.10: Upgrade to Python 3.10 or higher
- Not a Git repository: Run
git initfirst - Database errors: Delete
.haunted/haunted.dband reinitialize
Logs
Enable verbose logging:
uvx haunted --verbose start
Or specify log file:
uvx haunted --log-file haunted.log start
Examples
Basic Workflow
# Initialize project
uvx haunted init
# Create issues
uvx haunted issue create "Add user model" --priority high
uvx haunted issue create "Implement API endpoints" --priority high
uvx haunted issue create "Add input validation" --priority medium
# Start AI processing
uvx haunted start
# Monitor progress
watch uvx haunted status
Issue Management
# View issue details
uvx haunted issue show abc123
# Add clarification comment
uvx haunted issue comment abc123 "Please use bcrypt for password hashing"
# Check all open issues
uvx haunted issue list --status open
Contributing
- Fork the repository
- Create feature branch:
git checkout -b feature/name - Make changes and test
- Submit pull request
License
MIT License - see LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file haunted-0.1.1.tar.gz.
File metadata
- Download URL: haunted-0.1.1.tar.gz
- Upload date:
- Size: 87.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
86f9f4fe8ce9f7b3fe536cdc8dd334cd79f2d2251319417735bc673f7899ea3e
|
|
| MD5 |
c3d072e96e0fb1c7bc3b795eceb7a980
|
|
| BLAKE2b-256 |
4140d918a37664b72f582898d7969f84a3183774c36607209ca2fdf0096d3a18
|
Provenance
The following attestation bundles were made for haunted-0.1.1.tar.gz:
Publisher:
python-publish.yml on Pr0gCat/haunted
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
haunted-0.1.1.tar.gz -
Subject digest:
86f9f4fe8ce9f7b3fe536cdc8dd334cd79f2d2251319417735bc673f7899ea3e - Sigstore transparency entry: 488296697
- Sigstore integration time:
-
Permalink:
Pr0gCat/haunted@e580a2b464176945b49c50652cff6c6c03cd3f0d -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/Pr0gCat
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@e580a2b464176945b49c50652cff6c6c03cd3f0d -
Trigger Event:
release
-
Statement type:
File details
Details for the file haunted-0.1.1-py3-none-any.whl.
File metadata
- Download URL: haunted-0.1.1-py3-none-any.whl
- Upload date:
- Size: 45.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
290621d0b3fa1415eb02e218253bce9a44094ef5bf4a2f3028c40555b6b5dfdc
|
|
| MD5 |
a2bf422f466abb460ab51e86469e0f11
|
|
| BLAKE2b-256 |
0f08dcb6de9c36b4679bb06569f3cfdc2ae8d5118b0e29a51d393f8d33d92089
|
Provenance
The following attestation bundles were made for haunted-0.1.1-py3-none-any.whl:
Publisher:
python-publish.yml on Pr0gCat/haunted
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
haunted-0.1.1-py3-none-any.whl -
Subject digest:
290621d0b3fa1415eb02e218253bce9a44094ef5bf4a2f3028c40555b6b5dfdc - Sigstore transparency entry: 488296714
- Sigstore integration time:
-
Permalink:
Pr0gCat/haunted@e580a2b464176945b49c50652cff6c6c03cd3f0d -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/Pr0gCat
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-publish.yml@e580a2b464176945b49c50652cff6c6c03cd3f0d -
Trigger Event:
release
-
Statement type: