{"id":47287828,"url":"https://github.com/bigmoon-dev/agent-cooking-cli","last_synced_at":"2026-05-07T07:05:43.161Z","repository":{"id":344599702,"uuid":"1182383963","full_name":"bigmoon-dev/agent-cooking-cli","owner":"bigmoon-dev","description":"Evidence-first workflow CLI for agents: generate a workspace, collect auditable artifacts, and drive triage/design/product decisions without chat-memory.","archived":false,"fork":false,"pushed_at":"2026-04-12T12:03:38.000Z","size":143,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-12T13:10:36.634Z","etag":null,"topics":["agent","automation","bluetooth","cli","embedded","evidence","firmware","incident-response","power-management","product-management","rca","reproducibility","triage","workflow"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bigmoon-dev.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","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":"NOTICE","maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":"DCO","cla":null}},"created_at":"2026-03-15T12:57:18.000Z","updated_at":"2026-04-12T12:03:40.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/bigmoon-dev/agent-cooking-cli","commit_stats":null,"previous_names":["bigmoon-dev/agent-cooking-cli"],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/bigmoon-dev/agent-cooking-cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigmoon-dev%2Fagent-cooking-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigmoon-dev%2Fagent-cooking-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigmoon-dev%2Fagent-cooking-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigmoon-dev%2Fagent-cooking-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bigmoon-dev","download_url":"https://codeload.github.com/bigmoon-dev/agent-cooking-cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bigmoon-dev%2Fagent-cooking-cli/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32726690,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-07T02:14:30.463Z","status":"ssl_error","status_checked_at":"2026-05-07T02:14:29.405Z","response_time":62,"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":["agent","automation","bluetooth","cli","embedded","evidence","firmware","incident-response","power-management","product-management","rca","reproducibility","triage","workflow"],"created_at":"2026-03-16T06:21:06.708Z","updated_at":"2026-05-07T07:05:43.156Z","avatar_url":"https://github.com/bigmoon-dev.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# agent-cooking-cli\n\n[![CI](https://github.com/bigmoon-dev/agent-cooking-cli/actions/workflows/ci.yml/badge.svg)](https://github.com/bigmoon-dev/agent-cooking-cli/actions/workflows/ci.yml)\n[![Coverage](https://img.shields.io/badge/coverage-66%25-yellow)](docs/testing.md)\n[![License: Apache 2.0](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](LICENSE)\n[![Lint: ruff](https://img.shields.io/badge/lint-ruff-black.svg)](https://github.com/astral-sh/ruff)\n\nEvidence-first workflows for agents. Generate a workspace, then execute steps with auditable artifacts.\n\n[中文版 README](README.zh-CN.md)\n\n## What It Does\n\n`agent-cooking-cli` gives your agent a \"recipe\" (profile) and a persistent workspace so it can work without relying on chat memory.\n\nThe workspace lives under `TRIAGEFLOW_ROOT/triage/` and includes:\n\n- `triage/case.yaml`: input and context (facts, not guesses)\n- `triage/evidence/` + `triage/evidence/index.md`: evidence snippets with EIDs (E001, E002, ...)\n- `triage/facts.md`: facts only (each cites EIDs)\n- `triage/hypotheses.md`: hypotheses (must cite EIDs)\n- `triage/directions.md`: top directions (must cite EIDs)\n\nHard rule: no evidence -\u003e no hypothesis/direction.\n\n## Install\n\n### pipx (recommended)\n\n```bash\npipx install git+https://github.com/bigmoon-dev/agent-cooking-cli.git\nkitchen --help\n```\n\n### Editable install (dev)\n\n```bash\npython -m pip install -e .\npython -m triageflow --help\n```\n\nThe console entry point is `kitchen`, but `python -m triageflow ...` is the most reliable way to run.\n\n## 5-Minute MVP\n\nThis is the fastest verified path to experience the full workflow from install to a validated result.\n\nWhat you will do:\n\n1. Create a triage workspace\n2. Attach a small UART log\n3. Capture one evidence item (`E001`)\n4. Add one fact backed by evidence\n5. Add one hypothesis backed by evidence\n6. Build one direction\n7. Validate the workspace\n\nWhen it succeeds, you will have a complete `triage/` folder with evidence and decision artifacts on disk.\n\n### Run It\n\n```bash\npython3 -m pip install -e .\nexport TRIAGEFLOW_ROOT=/tmp/triageflow-mvp\nrm -rf \"$TRIAGEFLOW_ROOT\"\nmkdir -p \"$TRIAGEFLOW_ROOT\"\n\ncat \u003e \"$TRIAGEFLOW_ROOT/uart.log\" \u003c\u003c'EOF'\nboot\npanic: watchdog\nstack: ...\nreboot\nEOF\n\npython3 -m triageflow start --profile embedded_system_v1\n\nprintf \"mvp reboot\\naffects all\\nfw-mvp\\nhw-mvp\\nopen lid, pair, wait\\nnow\\n\" | \\\n  python3 -m triageflow round run 0 --no-editor\n\nprintf \"mixed\\nn\\nunknown\\nunknown\\nunknown\\nunknown\\npanic\\n\" | \\\n  python3 -m triageflow round run 1 --no-editor\n\npython3 -m triageflow evidence attach --uart-log \"$TRIAGEFLOW_ROOT/uart.log\"\npython3 -m triageflow evidence hunt\n\npython3 -m triageflow facts add \\\n  --text \"panic observed during flow\" \\\n  --evidence E001\n\npython3 -m triageflow hypotheses add \\\n  --hypothesis \"watchdog reset triggers reboot\" \\\n  --evidence E001 \\\n  --test \"print reset cause / wdt reason\"\n\npython3 -m triageflow direction-build --overwrite --top-n 1\npython3 -m triageflow validate\npython3 -m triageflow status\npython3 -m triageflow next\n```\n\nExpected Result\n\nYou should see output like:\n\n- Initialized .../triage\n- Next: round run 0\n- Added E001: .../triage/evidence/log/E001_log.txt\n- Added F... to .../triage/facts.md\n- Added H... to .../triage/hypotheses.md\n- Wrote .../triage/directions.md (1 directions)\n- OK: validation passed\n- Next: validate\n\nFiles You Should See\n\nAfter the MVP completes, these files should exist:\n\n- $TRIAGEFLOW_ROOT/triage/profile.yaml\n- $TRIAGEFLOW_ROOT/triage/case.yaml\n- $TRIAGEFLOW_ROOT/triage/evidence/index.md\n- $TRIAGEFLOW_ROOT/triage/evidence/log/E001_log.txt\n- $TRIAGEFLOW_ROOT/triage/facts.md\n- $TRIAGEFLOW_ROOT/triage/hypotheses.md\n- $TRIAGEFLOW_ROOT/triage/directions.md\n\nWhat You Just Proved\n\nThis MVP shows that triageflow can:\n\n- persist a workspace on disk\n- capture evidence with stable EIDs\n- enforce evidence-backed facts and hypotheses\n- generate directions from evidence-backed hypotheses\n- validate the resulting workspace\n\nIf you want a more guided version of this flow, see `docs/quickstart.md`.\n\n## Concepts\n\nThe triage workspace lives under `TRIAGEFLOW_ROOT/triage/` and is designed to be stable and reviewable.\n\nKey idea: evidence first. Facts, hypotheses, and directions should cite evidence IDs.\n\n## Quickstart (Embedded)\n\nPick a workspace root (outside your code repo) and run:\n\n```bash\nexport TRIAGEFLOW_ROOT=/path/to/workspace\npython -m triageflow start --profile embedded_system_v1\n\n# Keep running this; it tells you the next command.\npython -m triageflow next\n```\n\nIf you want a minimal reproducible demo, create a small UART log:\n\n```bash\ncat \u003e \"$TRIAGEFLOW_ROOT/uart.log\" \u003c\u003c'EOF'\nboot\npanic: watchdog\nstack: ...\nreboot\nEOF\n```\n\nThen follow `next`.\n\n### Legacy MVP Script (Deprecated)\n\nThis older script remains for reference. Prefer the 5-Minute MVP section above, or `docs/quickstart.md`.\n\n```bash\nexport TRIAGEFLOW_ROOT=/path/to/workspace\nrm -rf \"$TRIAGEFLOW_ROOT/triage\"\nmkdir -p \"$TRIAGEFLOW_ROOT\"\n\ncat \u003e \"$TRIAGEFLOW_ROOT/uart.log\" \u003c\u003c'EOF'\nboot\npanic: watchdog\nstack: ...\nreboot\nEOF\n\npython -m triageflow init --profile embedded_system_v1\n\nprintf \"mvp reboot\\naffects all\\nfw-mvp\\nhw-mvp\\nopen lid, pair, wait\\nnow\\n\" | \\\n  python -m triageflow round run 0 --no-editor\n\nprintf \"mixed\\nn\\nunknown\\nunknown\\nunknown\\nunknown\\npanic\\n\" | \\\n  python -m triageflow round run 1 --no-editor\n\npython -m triageflow evidence attach --uart-log \"$TRIAGEFLOW_ROOT/uart.log\"\npython -m triageflow evidence hunt\n\npython -m triageflow facts add --text \"panic observed during flow\" --evidence E001\npython -m triageflow hypotheses add \\\n  --hypothesis \"watchdog reset triggers reboot\" \\\n  --evidence E001 \\\n  --test \"print reset cause / wdt reason\"\n\npython -m triageflow direction-build --overwrite --top-n 1\npython -m triageflow validate\npython -m triageflow status\n```\n\n## Profiles\n\nList built-in profiles:\n\n```bash\npython -m triageflow profile list\n```\n\nCurrent profiles:\n\n- `embedded_system_v1`: stability/power/bt/charging (UART-first)\n- `design_system_v1`: software design decisions\n- `product_definition_v1`: product definition decisions\n\n## Expert Constraints (dianoia integration)\n\nUse a [dianoia](https://github.com/bigmoon-dev/dianoia-ai) distilled expert profile to inject domain expertise into the workflow.\nThe expert profile acts as a continuous supervisor — its constraints apply to every decision throughout the workflow, not just during review.\n\n```bash\nkitchen init --profile design_system_v1 --expert ~/dianoia-experts/ai-product-architect\n```\n\nThis generates a `CLAUDE.md` in the workspace root with all expert constraints grouped by domain layer (identity, goals, methods, values).\nThe AI agent reads these as authoritative guardrails: every hypothesis, direction, and decision must respect the expert's knowledge.\n\n## For Agents\n\nSee `AGENTS.md`.\n\n## Developer\n\n```bash\npython -m pip install -e \".[dev]\"\npython -m pytest -q\npython -m triageflow acceptance run\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbigmoon-dev%2Fagent-cooking-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbigmoon-dev%2Fagent-cooking-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbigmoon-dev%2Fagent-cooking-cli/lists"}