{"id":46226865,"url":"https://github.com/fractalmind-ai/oh-my-code","last_synced_at":"2026-03-03T16:47:46.768Z","repository":{"id":332009248,"uuid":"1132433270","full_name":"fractalmind-ai/oh-my-code","owner":"fractalmind-ai","description":"Personal development workspace and code experiments","archived":false,"fork":false,"pushed_at":"2026-03-01T12:42:23.000Z","size":157,"stargazers_count":4,"open_issues_count":0,"forks_count":3,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-03-01T15:00:59.806Z","etag":null,"topics":["development","productivity","productivity-tools","python","workspace"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fractalmind-ai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-01-12T00:08:47.000Z","updated_at":"2026-03-01T12:42:27.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/fractalmind-ai/oh-my-code","commit_stats":null,"previous_names":["fractalmind-ai/oh-my-code"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/fractalmind-ai/oh-my-code","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fractalmind-ai%2Foh-my-code","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fractalmind-ai%2Foh-my-code/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fractalmind-ai%2Foh-my-code/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fractalmind-ai%2Foh-my-code/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fractalmind-ai","download_url":"https://codeload.github.com/fractalmind-ai/oh-my-code/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fractalmind-ai%2Foh-my-code/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30052133,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-03T15:26:47.567Z","status":"ssl_error","status_checked_at":"2026-03-03T15:26:17.132Z","response_time":61,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["development","productivity","productivity-tools","python","workspace"],"created_at":"2026-03-03T16:47:46.168Z","updated_at":"2026-03-03T16:47:46.756Z","avatar_url":"https://github.com/fractalmind-ai.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# oh-my-code\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)\n[![Python 3](https://img.shields.io/badge/python-3-blue.svg)](https://www.python.org/downloads/release/python-38/)\n[![Stars](https://img.shields.io/github/stars/fractalmind-ai/oh-my-code?style=social)](https://github.com/fractalmind-ai/oh-my-code/stargazers)\n[![Forks](https://img.shields.io/github/forks/fractalmind-ai/oh-my-code?style=social)](https://github.com/fractalmind-ai/oh-my-code/network/members)\n\n`oh-my-code` is a turnkey, process-oriented multi-agent setup for automated development workflows.\n\nIt vendors `agent-manager` under `.claude/skills/agent-manager`, so a plain `git clone` is enough (no `openskills install` required).\n\n## 📋 Table of Contents\n\n- [Features](#features)\n- [Requirements](#requirements)\n- [Quickstart](#quickstart)\n- [Quality Gates](#quality-gates)\n- [Team](#team)\n- [Agents](#agents)\n- [OKR-Driven Heartbeat](#okr-driven-heartbeat)\n- [Personality Files](#personality-files)\n- [Contributing](#contributing)\n- [License](#license)\n\n## ✨ Features\n\n- **Turnkey Setup**: Clone and go - no external dependencies\n- **Multi-Agent Orchestration**: Automated task distribution and execution\n- **Agent Personality System**: Configurable identity, soul, and memory files for persistent agent behavior\n- **Quality Gates**: Automated code quality checks\n- **Scheduled Work Cycles**: 15-minute automated work cycles\n- **OKR-Driven Heartbeat**: Periodic heartbeat loop that reads OKR state, identifies blockers, and advances objectives\n- **Process-Oriented**: GitHub issues-driven workflow\n\n## 📦 Requirements\n\n- `python3`\n- `tmux`\n\n## 🚀 Quickstart\n\nIf your agent CLI supports `.claude/commands`, use:\n- `/oh-my-code/quickstart`\n\nTo enable/disable the 15-minute scheduled work cycle:\n- `/oh-my-code/startup`\n- `/oh-my-code/shutdown`\n\nOr run directly from the repo root:\n\n```bash\nbash scripts/preflight.sh\n\npython3 .claude/skills/agent-manager/scripts/main.py list\npython3 .claude/skills/agent-manager/scripts/main.py start supervisor\npython3 .claude/skills/agent-manager/scripts/main.py start coder-b\npython3 .claude/skills/agent-manager/scripts/main.py start coder-a\npython3 .claude/skills/agent-manager/scripts/main.py assign coder-a \u003c\u003c'EOF'\nTask:\n- \u003cwhat you want done\u003e\nEOF\npython3 .claude/skills/agent-manager/scripts/main.py monitor coder-a --follow\n```\n\n## 🔍 Quality Gates (Default)\n\nRun on the repo you changed (often a `workspace/\u003crepo\u003e` submodule):\n\n```bash\n# auto-detect gates in that repo\nbash scripts/quality-gates.sh --repo workspace/\u003crepo\u003e\n\n# verify without allowing file changes\nbash scripts/quality-gates.sh --repo workspace/\u003crepo\u003e --mode check\n```\n\n## 👥 Team\n\nTeam membership and roles: `TEAM.md`.\n\nWorkflow: follow `workflows/github_issues.md`.\n\n## 🤖 Agents\n\nAgents live in `agents/EMP_*.md`:\n- `coder-a` (EMP_0002): Team Lead + QA; drives `workflows/github_issues.md` + quality gates\n- `supervisor`: watchdog that keeps the Team Lead alive\n- `coder-b` (EMP_0003): developer (implementation)\n\nTo switch CLIs, edit `agents/EMP_0001.md`, `agents/EMP_0002.md`, `agents/EMP_0003.md` `launcher:` fields.\n\n## 🎯 OKR-Driven Heartbeat\n\nThe coordinator agent runs a periodic heartbeat that keeps work aligned with objectives:\n\n1. **Read** `OKR.md` to find active objectives and their blocked key results.\n2. **Check** progress via `gh` CLI and agent status (`tmux capture-pane`).\n3. **Advance** — take the smallest action to unblock (assign agent, check CI, label PR).\n4. **Update** `OKR.md` when a key result status changes.\n5. **Notify** (optional) — send a summary to Slack or Telegram.\n\nIf no OKRs are active, the heartbeat replies `HEARTBEAT_OK` and idles.\n\n### Key Files\n\n| File | Purpose |\n|------|---------|\n| [`HEARTBEAT.md`](HEARTBEAT.md) | Coordinator's heartbeat runbook |\n| [`OKR.md`](OKR.md) | Active and archived OKRs |\n| [`memory/heartbeat-state.json`](memory/heartbeat-state.json) | Persistent heartbeat state |\n| [`workflows/github_issues.md`](workflows/github_issues.md) | Tactical issue-to-PR workflow |\n\n## 🧠 Personality Files\n\nThese files give your agent a persistent identity and memory across sessions. Fill them in to customize behavior:\n\n| File | Purpose |\n|------|---------|\n| [`SOUL.md`](SOUL.md) | Core values, boundaries, and behavioral principles |\n| [`IDENTITY.md`](IDENTITY.md) | Agent name, role, and avatar |\n| [`USER.md`](USER.md) | Info about the human operator (timezone, preferences) |\n| [`MEMORY.md`](MEMORY.md) | Curated long-term memory (people, workflows, lessons) |\n| [`TOOLS.md`](TOOLS.md) | Environment-specific notes (SSH hosts, endpoints, devices) |\n\nAll files are templates with placeholder comments — fill in your details and delete the comments.\n\n## 🤝 Contributing\n\nContributions are welcome! Please read our [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct and the process for submitting pull requests.\n\n## 📄 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## 🔗 Links\n\n- [FractalMind AI](https://github.com/fractalmind-ai)\n- [Agent Manager](https://github.com/fractalmind-ai/agent-manager-skill)\n- [Team Manager](https://github.com/fractalmind-ai/team-manager-skill)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffractalmind-ai%2Foh-my-code","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffractalmind-ai%2Foh-my-code","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffractalmind-ai%2Foh-my-code/lists"}