taskops-cli 0.3.0__tar.gz → 0.3.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- taskops_cli-0.3.2/.claude/settings.json +36 -0
- taskops_cli-0.3.2/.mcp.json +14 -0
- taskops_cli-0.3.2/.taskops/board/cache.sqlite +0 -0
- taskops_cli-0.3.2/.taskops/board/cache.sqlite-shm +0 -0
- taskops_cli-0.3.2/.taskops/board/cache.sqlite-wal +0 -0
- taskops_cli-0.3.2/.taskops/board/events.jsonl +782 -0
- taskops_cli-0.3.2/.taskops/board/live.sqlite +0 -0
- taskops_cli-0.3.2/.taskops/board/live.sqlite-shm +0 -0
- taskops_cli-0.3.2/.taskops/board/live.sqlite-wal +0 -0
- taskops_cli-0.3.2/.taskops/board.json +1 -0
- taskops_cli-0.3.2/.taskops/reports/lifecycle-chapter.html +497 -0
- taskops_cli-0.3.2/.taskops/reports/reports-chapter.html +403 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ARCHITECTURE.md +546 -16
- taskops_cli-0.3.2/CHANGELOG.md +96 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/CLAUDE.md +52 -3
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/PKG-INFO +114 -10
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/README.md +113 -9
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/_version.py +1 -1
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/_wire.py +45 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/cli/commands.py +43 -34
- taskops_cli-0.3.2/src/taskops/cli/enrol.py +127 -0
- taskops_cli-0.3.2/src/taskops/cli/grants.py +59 -0
- taskops_cli-0.3.2/src/taskops/cli/hooks.py +50 -0
- taskops_cli-0.3.2/src/taskops/cli/main.py +116 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/cli/operate.py +57 -40
- taskops_cli-0.3.2/src/taskops/cli/paging.py +75 -0
- taskops_cli-0.3.0/src/taskops/cli/main.py → taskops_cli-0.3.2/src/taskops/cli/parser.py +85 -101
- taskops_cli-0.3.2/src/taskops/cli/pull.py +162 -0
- taskops_cli-0.3.2/src/taskops/cli/rm.py +63 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/cli/serving.py +14 -16
- taskops_cli-0.3.2/src/taskops/cli/window.py +154 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/event.py +17 -7
- taskops_cli-0.3.2/src/taskops/core/forge.py +85 -0
- taskops_cli-0.3.2/src/taskops/core/holding.py +100 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/replay.py +1 -1
- taskops_cli-0.3.2/src/taskops/core/reports.py +116 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/scope.py +17 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/types.py +4 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/gitwork/bind.py +11 -2
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/gitwork/install.py +15 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/gitwork/patch.py +24 -4
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/gitwork/remote.py +14 -1
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/admin.py +33 -2
- taskops_cli-0.3.2/src/taskops/http/gitdoor.py +198 -0
- taskops_cli-0.3.2/src/taskops/http/github.py +180 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/handler.py +31 -2
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/ingest.py +10 -5
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/login.py +12 -2
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/mounts.py +30 -2
- taskops_cli-0.3.2/src/taskops/http/removal.py +106 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/server.py +20 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/static.py +30 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/upstream.py +1 -1
- taskops_cli-0.3.2/src/taskops/mcp/activity.py +131 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/dossier.py +14 -4
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/schema.py +26 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/tools.py +30 -2
- taskops_cli-0.3.2/src/taskops/py.typed +0 -0
- taskops_cli-0.3.2/src/taskops/ui/app.js +60 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/__init__.py +10 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/_facts.py +30 -2
- taskops_cli-0.3.2/src/taskops/verbs/_stories.py +94 -0
- taskops_cli-0.3.2/src/taskops/verbs/activity.py +145 -0
- taskops_cli-0.3.2/src/taskops/verbs/filed.py +114 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/project.py +53 -7
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/pulse.py +9 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/tests/test_core.py +194 -1
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/tests/test_git.py +32 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/tests/test_mcp.py +67 -3
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/tests/test_topology.py +1445 -1
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/tests/test_ui.py +162 -15
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/tests/test_verbs.py +455 -2
- taskops_cli-0.3.2/tests/test_window.py +244 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/fixture.json +154 -105
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/actors.tsx +12 -4
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/forge-links.tsx +18 -5
- taskops_cli-0.3.2/ui/smoke/sections/report-markdown.tsx +86 -0
- taskops_cli-0.3.2/ui/smoke/sections/report-sandbox.tsx +251 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/section.ts +14 -3
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/App.tsx +43 -4
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/client.ts +5 -1
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/card/Drawer.tsx +9 -2
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/card/Sections.tsx +32 -21
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/card/tokens.ts +10 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/chrome/TabNav.tsx +11 -5
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/monitor/Chapter.tsx +1 -1
- taskops_cli-0.3.2/ui/src/components/reports/ReportFrame.tsx +203 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/links.tsx +81 -1
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/main.tsx +13 -3
- taskops_cli-0.3.2/ui/src/pages/Reports.tsx +252 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/types.ts +72 -0
- taskops_cli-0.3.0/CHANGELOG.md +0 -40
- taskops_cli-0.3.0/src/taskops/cli/enrol.py +0 -45
- taskops_cli-0.3.0/src/taskops/http/gitdoor.py +0 -103
- taskops_cli-0.3.0/src/taskops/ui/app.js +0 -60
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/.gitattributes +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/.github/workflows/ci.yml +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/.github/workflows/workflow.yml +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/.gitignore +0 -0
- /taskops_cli-0.3.0/src/taskops/py.typed → /taskops_cli-0.3.2/.taskops/ui.lock +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/pyproject.toml +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/__init__.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/_clock.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/_errors.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/_ids.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/_json.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/_locate.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/board.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/cli/__init__.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/cli/__main__.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/cli/admin.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/cli/claude.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/cli/push.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/cli/remote.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/cli/watch.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/cli/wording.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/__init__.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/actors.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/challenge.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/chapters.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/graph.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/hours.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/machine.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/mentions.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/review.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/core/seams.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/gitwork/__init__.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/gitwork/catchup.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/gitwork/claudefiles.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/gitwork/diff.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/gitwork/landing.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/gitwork/run.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/gitwork/sig.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/gitwork/trailer.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/gitwork/trees.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/__init__.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/auth.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/feed.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/grants.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/rpc.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/scoped.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/http/watcher.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/identity.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/__init__.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/__main__.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/before.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/boards.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/boardview.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/brief.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/fields.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/gitmoves.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/hello.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/integrate.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/render.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/server.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/mcp/thread.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/session.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/store/__init__.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/store/cache.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/store/creds.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/store/live.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/store/log.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/store/pubkeys.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/store/reviews.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/store/server.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/store/stores.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/ui/index.html +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/ui/style.css +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/_args.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/_cards.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/_context.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/_mentions.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/_rows.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/_waiting.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/assign.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/card.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/events.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/plan.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/record.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/report.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/review.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/take.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/src/taskops/verbs/update.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/tests/__init__.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/tests/conftest.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/tests/test_architecture.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/tests/test_claude.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/tests/test_report.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/tests/test_store.py +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/tests/ui_harness.js +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/build.mjs +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/index.html +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/package-lock.json +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/package.json +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/main.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/run.mjs +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/board-columns.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/chapter-landed.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/chapters-open.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/comment-box.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/diff-page.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/dossier.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/event-stream.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/git-diff.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/monitor-panes.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/overlay-escape.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/reviewing-skew.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/swarm-topology.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/thread-closing-note.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections/worktrees-index.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/smoke/sections.mjs +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/actors/Daysheet.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/actors/DevPanel.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/board/CardTile.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/board/Column.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/card/CommentBox.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/card/Patch.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/card/Thread.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/card/split.ts +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/chrome/AvatarStack.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/chrome/Header.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/chrome/KpiRail.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/chrome/MilestonePicker.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/monitor/DependencyChain.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/monitor/EditSurface.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/monitor/EventStream.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/monitor/LeaseHealth.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/monitor/LiveLeases.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/monitor/Mentions.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/monitor/Pane.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/monitor/Swarm.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/monitor/Throughput.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/monitor/panels.ts +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/shared/Markdown.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/shared/Overlay.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/components/shared/overlayStack.ts +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/format.ts +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/markdown.ts +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/pages/Actors.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/pages/Board.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/pages/Monitor.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/pages/WorktreeDiff.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/pages/Worktrees.tsx +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/theme/theme.ts +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/theme/tokens.css +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/useBoard.ts +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/src/useEvents.ts +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/styles/index.css +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/ui/tsconfig.json +0 -0
- {taskops_cli-0.3.0 → taskops_cli-0.3.2}/uv.lock +0 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hooks": {
|
|
3
|
+
"PostToolUse": [
|
|
4
|
+
{
|
|
5
|
+
"hooks": [
|
|
6
|
+
{
|
|
7
|
+
"type": "command",
|
|
8
|
+
"command": "\"/Users/berna/.local/share/uv/tools/taskops-cli/bin/python\" -m taskops.cli hook claude"
|
|
9
|
+
}
|
|
10
|
+
],
|
|
11
|
+
"matcher": "*"
|
|
12
|
+
}
|
|
13
|
+
],
|
|
14
|
+
"UserPromptSubmit": [
|
|
15
|
+
{
|
|
16
|
+
"hooks": [
|
|
17
|
+
{
|
|
18
|
+
"type": "command",
|
|
19
|
+
"command": "\"/Users/berna/.local/share/uv/tools/taskops-cli/bin/python\" -m taskops.cli hook claude"
|
|
20
|
+
}
|
|
21
|
+
]
|
|
22
|
+
}
|
|
23
|
+
],
|
|
24
|
+
"PreToolUse": [
|
|
25
|
+
{
|
|
26
|
+
"matcher": "Bash",
|
|
27
|
+
"hooks": [
|
|
28
|
+
{
|
|
29
|
+
"type": "command",
|
|
30
|
+
"command": "c=$(jq -r '.tool_input.command // \"\"'); printf '%s' \"$c\" | grep -qE 'python[0-9.]*[[:space:]]+-(c|[[:space:]]|$)' && printf '%s' \"$c\" | grep -qE 'open_board|board[.]call|taskops[.]mcp|taskops[.]board|gitmoves' && printf '%s' '{\"hookSpecificOutput\":{\"hookEventName\":\"PreToolUse\",\"permissionDecision\":\"deny\",\"permissionDecisionReason\":\"REFUSED: the board is driven through the taskops_* MCP tools, never through the shell. Use taskops_board, taskops_card, taskops_take, taskops_update, taskops_comment, taskops_assign, taskops_merge, taskops_review or taskops_plan, each with repo_path= and actor=. Why this is hard and not a preference: the MCP tool is the ONLY door that runs both halves. taskops_assign cuts the worktrees that the plain assign verb does not, and taskops_merge runs the git merge that the plain merged verb does not, so driving a verb from the shell records board state about git that never happened. A shelled call also skips the pulse line, so you stop being told what the board is waiting for. The taskops CLI stays fine for what it owns: join, remote add, ui, serve, invite, revoke, tidy, and board create/ls/push.\"}}'; exit 0"
|
|
31
|
+
}
|
|
32
|
+
]
|
|
33
|
+
}
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
}
|
|
Binary file
|
|
Binary file
|
|
Binary file
|