{"id":40968948,"url":"https://github.com/metroxe/ouroboros","last_synced_at":"2026-01-30T01:21:26.684Z","repository":{"id":333797735,"uuid":"1137872063","full_name":"Metroxe/ouroboros","owner":"Metroxe","description":null,"archived":false,"fork":false,"pushed_at":"2026-01-22T06:40:43.000Z","size":3401,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-22T18:56:40.881Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Metroxe.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-01-20T00:28:54.000Z","updated_at":"2026-01-22T06:40:37.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/Metroxe/ouroboros","commit_stats":null,"previous_names":["metroxe/ouroboros"],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/Metroxe/ouroboros","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Metroxe%2Fouroboros","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Metroxe%2Fouroboros/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Metroxe%2Fouroboros/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Metroxe%2Fouroboros/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Metroxe","download_url":"https://codeload.github.com/Metroxe/ouroboros/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Metroxe%2Fouroboros/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28739320,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-24T22:12:27.248Z","status":"ssl_error","status_checked_at":"2026-01-24T22:12:10.529Z","response_time":89,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6: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":[],"created_at":"2026-01-22T06:31:39.728Z","updated_at":"2026-01-30T01:21:26.679Z","avatar_url":"https://github.com/Metroxe.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/banner.png\" alt=\"Ouroboros Banner\" width=\"100%\"\u003e\n\u003c/p\u003e\n\n# Ouroboros\n\nA prompt-driven development workflow system for AI-assisted software engineering.\n\n## Installing/Updating\n\n### Prerequisites\n\n- Git\n- [GitHub CLI](https://cli.github.com/) (`gh`)\n- At least one LLM runtime:\n  - [Claude Code](https://docs.anthropic.com/en/docs/claude-code) (`claude` CLI)\n  - [Cursor](https://cursor.com/docs/cli/overview) (`cursor` CLI)\n  - [OpenCode](https://opencode.ai/) (`opencode` CLI)\n\n### Install\n\nInstall or update ouroboros in any project:\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/Metroxe/ouroboros/main/install.sh | bash\n```\n\nTo install a specific version:\n\n```bash\ncurl -fsSL https://raw.githubusercontent.com/Metroxe/ouroboros/main/install.sh | bash -s -- v0.2.0\n```\n\n## One-Time Setup\n\nAfter installing, set up your project context:\n\n1. **Define your product mission** - Run the create-mission prompt to establish your product vision:\n   ```\n   ouroboros/prompts/create-mission.md\n   ```\n   This creates `ouroboros/reference/product-description.md`.\n\n2. **Define your tech stack** - Run the create-tech-stack prompt:\n   ```\n   ouroboros/prompts/create-tech-stack.md\n   ```\n   This creates `ouroboros/reference/tech-stack.md`.\n\n3. **Document gotchas** - Add known issues and pitfalls to `ouroboros/reference/gotchas.md`. These should be things that are **not inferable from the code** - external constraints, historical decisions, or non-obvious quirks. Examples:\n   ```markdown\n   ## Infrastructure\n   - Production database has a 5-second query timeout enforced at the proxy level\n   - The staging environment shares a Redis instance with another team's project\n   - Deployments are blocked on Fridays after 2pm by company policy\n\n   ## Third-Party Services\n   - Stripe webhooks must respond within 10 seconds or they get retried\n   - The legacy PDF service (pdf.internal.corp) only accepts files under 10MB\n   - Our SendGrid account is on a plan that limits to 10k emails/day\n\n   ## Historical Decisions\n   - User IDs are UUIDs because we migrated from a system that used them - don't change to auto-increment\n   - The \"archived\" flag on projects is soft-delete; some clients still query archived data via the legacy API\n   ```\n\n## Running Prompts\n\nYou can reference any prompt file directly in your LLM conversation. For example:\n\n```\nRun ouroboros/prompts/create-epic.md\n```\n\nThe LLM will follow the instructions in that prompt file.\n\n## Workflow: Epic Development\n\nFor planned features and multi-day work, use the epic workflow:\n\n### Step 1: Create the Epic\n\nRun `ouroboros/prompts/create-epic.md` and have a conversation about what you want to build. The prompt will ask clarifying questions and save requirements to `ouroboros/epics/{date}-{epic-name}/requirements.md`.\n\n**Highly recommended:** Commit your changes before Step 2, especially if you have not `.gitignore`d the ouroboros folder.\n\n### Step 2: Implement the Epic\n\nRun the implementation script:\n\n```bash\n./ouroboros/scripts/implement-epic\n```\n\nSee [docs/implement-epic-explanation.md](docs/implement-epic-explanation.md) for CLI options, configuration details, and troubleshooting.\n\n### Step 3: Verify the Output\n\nAfter implementation completes, review the verification guide:\n\n```\nouroboros/epics/{epic-name}/verification-guide.md\n```\n\nThis contains manual testing steps to verify the implementation works correctly.\n\n### Step 4: Iterate if Needed\n\nFor bug fixes or additions to the epic, run:\n\n```\nouroboros/prompts/iterate-epic.md\n```\n\nThis guides you through adding features or fixing issues in the existing epic.\n\n## Workflow: Sessions\n\nFor smaller tasks that don't need the full epic pipeline (debugging, exploration, refactoring, quick fixes), use sessions instead.\n\n### Starting a Session\n\nRun `ouroboros/prompts/create-session.md` and describe what you want to work on. The prompt will:\n- Gather context from your reference files\n- Create a session file at `ouroboros/sessions/{date}-{topic}.md`\n- Track decisions, code changes, and next steps\n\n### Resuming a Session\n\nWhen you need to continue a session in a new context window, reference the session file:\n\n```\nResume ouroboros/sessions/2025-01-24-debug-auth-flow.md\n```\n\nThe prompt will recover the context and continue where you left off.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetroxe%2Fouroboros","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmetroxe%2Fouroboros","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmetroxe%2Fouroboros/lists"}