beacon-ai 0.34.1__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.
- beacon_ai-0.34.1/LICENSE +21 -0
- beacon_ai-0.34.1/PKG-INFO +513 -0
- beacon_ai-0.34.1/README.md +478 -0
- beacon_ai-0.34.1/beacon_ai.egg-info/PKG-INFO +513 -0
- beacon_ai-0.34.1/beacon_ai.egg-info/SOURCES.txt +207 -0
- beacon_ai-0.34.1/beacon_ai.egg-info/dependency_links.txt +1 -0
- beacon_ai-0.34.1/beacon_ai.egg-info/entry_points.txt +8 -0
- beacon_ai-0.34.1/beacon_ai.egg-info/requires.txt +9 -0
- beacon_ai-0.34.1/beacon_ai.egg-info/top_level.txt +1 -0
- beacon_ai-0.34.1/beacon_cli/__init__.py +14 -0
- beacon_ai-0.34.1/beacon_cli/_version.py +8 -0
- beacon_ai-0.34.1/beacon_cli/bclaude.py +238 -0
- beacon_ai-0.34.1/beacon_cli/dispatch.py +2635 -0
- beacon_ai-0.34.1/beacon_cli/find_root.py +49 -0
- beacon_ai-0.34.1/beacon_cli/hooks/__init__.py +13 -0
- beacon_ai-0.34.1/beacon_cli/hooks/context_monitor.py +564 -0
- beacon_ai-0.34.1/beacon_cli/hooks/post_commit.py +288 -0
- beacon_ai-0.34.1/beacon_cli/hooks/postcompact.py +202 -0
- beacon_ai-0.34.1/beacon_cli/hooks/save_hook.py +169 -0
- beacon_ai-0.34.1/beacon_cli/main.py +238 -0
- beacon_ai-0.34.1/beacon_cli/skills_helpers/__init__.py +20 -0
- beacon_ai-0.34.1/beacon_cli/skills_helpers/dm_discover.py +374 -0
- beacon_ai-0.34.1/beacon_cli/skills_helpers/dm_reply.py +268 -0
- beacon_ai-0.34.1/beacon_cli/skills_helpers/dm_send.py +454 -0
- beacon_ai-0.34.1/channel/bus-autonomous-content.mjs +58 -0
- beacon_ai-0.34.1/channel/bus-budget.mjs +118 -0
- beacon_ai-0.34.1/channel/bus-envelope.mjs +87 -0
- beacon_ai-0.34.1/channel/bus-heartbeat.mjs +108 -0
- beacon_ai-0.34.1/channel/bus-local-heartbeat.mjs +82 -0
- beacon_ai-0.34.1/channel/bus.mjs +1107 -0
- beacon_ai-0.34.1/channel/package-lock.json +1180 -0
- beacon_ai-0.34.1/channel/package.json +11 -0
- beacon_ai-0.34.1/channel/profile-resolver.mjs +150 -0
- beacon_ai-0.34.1/lib/__init__.py +11 -0
- beacon_ai-0.34.1/lib/_file_lock.py +236 -0
- beacon_ai-0.34.1/lib/agent.py +183 -0
- beacon_ai-0.34.1/lib/api_client.py +491 -0
- beacon_ai-0.34.1/lib/auth.py +632 -0
- beacon_ai-0.34.1/lib/branch.py +108 -0
- beacon_ai-0.34.1/lib/commands.py +11359 -0
- beacon_ai-0.34.1/lib/core.py +2238 -0
- beacon_ai-0.34.1/lib/cycle.py +326 -0
- beacon_ai-0.34.1/lib/firebase_config.json.example +10 -0
- beacon_ai-0.34.1/lib/operations.py +921 -0
- beacon_ai-0.34.1/lib/profile.py +364 -0
- beacon_ai-0.34.1/lib/search.py +599 -0
- beacon_ai-0.34.1/lib/session.py +1029 -0
- beacon_ai-0.34.1/lib/session_log.py +275 -0
- beacon_ai-0.34.1/lib/store.py +101 -0
- beacon_ai-0.34.1/lib/store_api.py +231 -0
- beacon_ai-0.34.1/lib/store_local.py +124 -0
- beacon_ai-0.34.1/lib/version_rules.py +287 -0
- beacon_ai-0.34.1/lib/worktree.py +127 -0
- beacon_ai-0.34.1/lib/ws_client.py +213 -0
- beacon_ai-0.34.1/pyproject.toml +168 -0
- beacon_ai-0.34.1/setup.cfg +4 -0
- beacon_ai-0.34.1/skills/_beacon-retrospect-methodology.md +205 -0
- beacon_ai-0.34.1/skills/_beacon-review-methodology.md +218 -0
- beacon_ai-0.34.1/skills/_beacon-spec-methodology.md +228 -0
- beacon_ai-0.34.1/skills/beacon-bus-armed.md +162 -0
- beacon_ai-0.34.1/skills/beacon-deploy.md +182 -0
- beacon_ai-0.34.1/skills/beacon-dispatch.md +700 -0
- beacon_ai-0.34.1/skills/beacon-dm-send.md +443 -0
- beacon_ai-0.34.1/skills/beacon-drift-check.md +167 -0
- beacon_ai-0.34.1/skills/beacon-incident-report.md +187 -0
- beacon_ai-0.34.1/skills/beacon-init.md +458 -0
- beacon_ai-0.34.1/skills/beacon-log.md +453 -0
- beacon_ai-0.34.1/skills/beacon-note.md +126 -0
- beacon_ai-0.34.1/skills/beacon-onboard.md +206 -0
- beacon_ai-0.34.1/skills/beacon-operation-execute.md +257 -0
- beacon_ai-0.34.1/skills/beacon-operation-review.md +216 -0
- beacon_ai-0.34.1/skills/beacon-operation-setup.md +361 -0
- beacon_ai-0.34.1/skills/beacon-pr-create.md +222 -0
- beacon_ai-0.34.1/skills/beacon-push.md +249 -0
- beacon_ai-0.34.1/skills/beacon-retro.md +215 -0
- beacon_ai-0.34.1/skills/beacon-retrospect.md +198 -0
- beacon_ai-0.34.1/skills/beacon-review-apply.md +157 -0
- beacon_ai-0.34.1/skills/beacon-review-meta.md +163 -0
- beacon_ai-0.34.1/skills/beacon-review-uc.md +154 -0
- beacon_ai-0.34.1/skills/beacon-review.md +179 -0
- beacon_ai-0.34.1/skills/beacon-roadmap.md +348 -0
- beacon_ai-0.34.1/skills/beacon-session-end.md +288 -0
- beacon_ai-0.34.1/skills/beacon-session-fork.md +151 -0
- beacon_ai-0.34.1/skills/beacon-session-merge-back.md +152 -0
- beacon_ai-0.34.1/skills/beacon-session-start.md +822 -0
- beacon_ai-0.34.1/skills/beacon-spec.md +483 -0
- beacon_ai-0.34.1/skills/beacon-task.md +200 -0
- beacon_ai-0.34.1/skills/beacon-vision.md +342 -0
- beacon_ai-0.34.1/tests/test_agent_identity.py +168 -0
- beacon_ai-0.34.1/tests/test_api.py +484 -0
- beacon_ai-0.34.1/tests/test_api_client.py +136 -0
- beacon_ai-0.34.1/tests/test_approved_actions.py +248 -0
- beacon_ai-0.34.1/tests/test_auth_profile.py +193 -0
- beacon_ai-0.34.1/tests/test_bclaude_wrapper.py +235 -0
- beacon_ai-0.34.1/tests/test_beacon_bus_inbox_hook.py +271 -0
- beacon_ai-0.34.1/tests/test_beacon_cli_scaffold.py +190 -0
- beacon_ai-0.34.1/tests/test_beacon_find_root.py +90 -0
- beacon_ai-0.34.1/tests/test_branch_focus_divergence.py +186 -0
- beacon_ai-0.34.1/tests/test_branch_slug.py +95 -0
- beacon_ai-0.34.1/tests/test_bus_auto_execute_allowlist.py +420 -0
- beacon_ai-0.34.1/tests/test_bus_budget.py +377 -0
- beacon_ai-0.34.1/tests/test_bus_budget_mcp_reply.py +257 -0
- beacon_ai-0.34.1/tests/test_bus_cli.py +801 -0
- beacon_ai-0.34.1/tests/test_bus_directory.py +906 -0
- beacon_ai-0.34.1/tests/test_bus_inbox_hook.py +467 -0
- beacon_ai-0.34.1/tests/test_bus_send_cross_project_routing.py +196 -0
- beacon_ai-0.34.1/tests/test_bus_send_live_check.py +163 -0
- beacon_ai-0.34.1/tests/test_bus_transport.py +949 -0
- beacon_ai-0.34.1/tests/test_bus_trigger_dogfood.py +213 -0
- beacon_ai-0.34.1/tests/test_changelog_api.py +272 -0
- beacon_ai-0.34.1/tests/test_channel_bus_autonomous_content.py +183 -0
- beacon_ai-0.34.1/tests/test_channel_bus_heartbeat.py +267 -0
- beacon_ai-0.34.1/tests/test_channel_bus_local_heartbeat.py +233 -0
- beacon_ai-0.34.1/tests/test_channel_bus_mjs_envelope.py +158 -0
- beacon_ai-0.34.1/tests/test_channel_lifecycle.py +367 -0
- beacon_ai-0.34.1/tests/test_cmd_bus_send_envelope.py +318 -0
- beacon_ai-0.34.1/tests/test_cmd_init_profile_prompt.py +192 -0
- beacon_ai-0.34.1/tests/test_cmd_purge_cloud.py +323 -0
- beacon_ai-0.34.1/tests/test_cognito_auth.py +239 -0
- beacon_ai-0.34.1/tests/test_commit_pr_session_tagging.py +225 -0
- beacon_ai-0.34.1/tests/test_context_monitor_auto_note.py +191 -0
- beacon_ai-0.34.1/tests/test_context_monitor_limit.py +209 -0
- beacon_ai-0.34.1/tests/test_context_monitor_python_port.py +469 -0
- beacon_ai-0.34.1/tests/test_core.py +432 -0
- beacon_ai-0.34.1/tests/test_cycle.py +352 -0
- beacon_ai-0.34.1/tests/test_cycle_cli.py +129 -0
- beacon_ai-0.34.1/tests/test_deploy_rollback.py +220 -0
- beacon_ai-0.34.1/tests/test_dm_discover_bus_mjs_needle.py +175 -0
- beacon_ai-0.34.1/tests/test_dm_discover_server_first.py +179 -0
- beacon_ai-0.34.1/tests/test_doc_skill_drift.py +457 -0
- beacon_ai-0.34.1/tests/test_doctor_dup_ids.py +107 -0
- beacon_ai-0.34.1/tests/test_documents_ws_broadcast.py +312 -0
- beacon_ai-0.34.1/tests/test_done_reason_required.py +333 -0
- beacon_ai-0.34.1/tests/test_dynamodb_bus_sessions.py +464 -0
- beacon_ai-0.34.1/tests/test_dynamodb_documents_retros.py +204 -0
- beacon_ai-0.34.1/tests/test_e2e_cloud_first_identity.py +215 -0
- beacon_ai-0.34.1/tests/test_entry_op_purge.py +351 -0
- beacon_ai-0.34.1/tests/test_envelope.py +495 -0
- beacon_ai-0.34.1/tests/test_envelope_integration.py +409 -0
- beacon_ai-0.34.1/tests/test_envelope_secret_startup.py +154 -0
- beacon_ai-0.34.1/tests/test_envelope_t5_drift.py +120 -0
- beacon_ai-0.34.1/tests/test_find_root_pyentry.py +94 -0
- beacon_ai-0.34.1/tests/test_frontmatter_blocklist.py +159 -0
- beacon_ai-0.34.1/tests/test_hook_windows_resolution.py +201 -0
- beacon_ai-0.34.1/tests/test_id_dedup.py +324 -0
- beacon_ai-0.34.1/tests/test_install_hooks.py +152 -0
- beacon_ai-0.34.1/tests/test_local_file_lock_concurrency.py +331 -0
- beacon_ai-0.34.1/tests/test_log_commit_actor.py +217 -0
- beacon_ai-0.34.1/tests/test_log_prepare_worktree_head.py +329 -0
- beacon_ai-0.34.1/tests/test_me_endpoints.py +318 -0
- beacon_ai-0.34.1/tests/test_me_sessions.py +264 -0
- beacon_ai-0.34.1/tests/test_members.py +210 -0
- beacon_ai-0.34.1/tests/test_milestone_add_flag_guard.py +89 -0
- beacon_ai-0.34.1/tests/test_milestone_purge_cli.py +215 -0
- beacon_ai-0.34.1/tests/test_ms_assignee_add.py +133 -0
- beacon_ai-0.34.1/tests/test_ms_join.py +251 -0
- beacon_ai-0.34.1/tests/test_ms_start_auto_branch.py +388 -0
- beacon_ai-0.34.1/tests/test_note_session_tagging.py +122 -0
- beacon_ai-0.34.1/tests/test_operation_envelope_cli.py +201 -0
- beacon_ai-0.34.1/tests/test_operation_envelope_verify.py +364 -0
- beacon_ai-0.34.1/tests/test_operation_envelopes.py +455 -0
- beacon_ai-0.34.1/tests/test_operations.py +754 -0
- beacon_ai-0.34.1/tests/test_persistence_poisoning_defense.py +302 -0
- beacon_ai-0.34.1/tests/test_post_commit_hook.py +300 -0
- beacon_ai-0.34.1/tests/test_post_commit_hook_py.py +320 -0
- beacon_ai-0.34.1/tests/test_postcompact_hook.py +106 -0
- beacon_ai-0.34.1/tests/test_postcompact_hook_py.py +159 -0
- beacon_ai-0.34.1/tests/test_powershell_dispatch.py +1150 -0
- beacon_ai-0.34.1/tests/test_powershell_e2e.py +285 -0
- beacon_ai-0.34.1/tests/test_pr_create_infer.py +163 -0
- beacon_ai-0.34.1/tests/test_pr_merge_link.py +133 -0
- beacon_ai-0.34.1/tests/test_pr_show.py +173 -0
- beacon_ai-0.34.1/tests/test_profile.py +474 -0
- beacon_ai-0.34.1/tests/test_profile_cross_lang.py +331 -0
- beacon_ai-0.34.1/tests/test_project_export_import.py +240 -0
- beacon_ai-0.34.1/tests/test_purge_api.py +431 -0
- beacon_ai-0.34.1/tests/test_purge_dispatch.py +129 -0
- beacon_ai-0.34.1/tests/test_release_docs.py +140 -0
- beacon_ai-0.34.1/tests/test_release_due_trigger.py +227 -0
- beacon_ai-0.34.1/tests/test_release_marker_trigger.py +148 -0
- beacon_ai-0.34.1/tests/test_retro_trigger.py +308 -0
- beacon_ai-0.34.1/tests/test_retros_endpoint.py +332 -0
- beacon_ai-0.34.1/tests/test_review_history.py +120 -0
- beacon_ai-0.34.1/tests/test_run_record_validation.py +121 -0
- beacon_ai-0.34.1/tests/test_save_hook_py.py +195 -0
- beacon_ai-0.34.1/tests/test_search.py +380 -0
- beacon_ai-0.34.1/tests/test_select_project_url_sync.py +138 -0
- beacon_ai-0.34.1/tests/test_server_high_risk_endpoint_enforce.py +414 -0
- beacon_ai-0.34.1/tests/test_session.py +107 -0
- beacon_ai-0.34.1/tests/test_session_cloud_first.py +191 -0
- beacon_ai-0.34.1/tests/test_session_end_and_rescue.py +246 -0
- beacon_ai-0.34.1/tests/test_session_fork.py +391 -0
- beacon_ai-0.34.1/tests/test_session_heartbeat_hook.py +198 -0
- beacon_ai-0.34.1/tests/test_session_heartbeat_responsibility.py +269 -0
- beacon_ai-0.34.1/tests/test_session_id.py +459 -0
- beacon_ai-0.34.1/tests/test_session_log_core.py +336 -0
- beacon_ai-0.34.1/tests/test_skill_beacon_dm_send.py +450 -0
- beacon_ai-0.34.1/tests/test_skill_install_windows.py +605 -0
- beacon_ai-0.34.1/tests/test_store_api_conflict.py +85 -0
- beacon_ai-0.34.1/tests/test_subdir_resolution.py +105 -0
- beacon_ai-0.34.1/tests/test_summary_deprecation.py +133 -0
- beacon_ai-0.34.1/tests/test_trailnode_manifest_authz.py +52 -0
- beacon_ai-0.34.1/tests/test_trailnode_ms8_routing.py +263 -0
- beacon_ai-0.34.1/tests/test_trailnode_ms8_trunk_e2e.py +475 -0
- beacon_ai-0.34.1/tests/test_trash_sweep.py +318 -0
- beacon_ai-0.34.1/tests/test_update.py +232 -0
- beacon_ai-0.34.1/tests/test_worktree_helper.py +124 -0
- beacon_ai-0.34.1/tests/test_ws_auth_close_codes.py +205 -0
- beacon_ai-0.34.1/tests/test_ws_v2_snapshot_hydrates_milestones.py +138 -0
beacon_ai-0.34.1/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 r_kida2
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,513 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: beacon-ai
|
|
3
|
+
Version: 0.34.1
|
|
4
|
+
Summary: AI-driven milestone tracker for Claude Code sessions
|
|
5
|
+
Author-email: r-kida2 <kurogin23mech@gmail.com>
|
|
6
|
+
License: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/r-kida2/beacon
|
|
8
|
+
Project-URL: Repository, https://github.com/r-kida2/beacon
|
|
9
|
+
Project-URL: Issues, https://github.com/r-kida2/beacon/issues
|
|
10
|
+
Keywords: ai,claude-code,milestone,project-management,productivity
|
|
11
|
+
Classifier: Development Status :: 4 - Beta
|
|
12
|
+
Classifier: Environment :: Console
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
15
|
+
Classifier: Operating System :: MacOS
|
|
16
|
+
Classifier: Operating System :: Microsoft :: Windows
|
|
17
|
+
Classifier: Operating System :: POSIX :: Linux
|
|
18
|
+
Classifier: Programming Language :: Python :: 3
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
23
|
+
Classifier: Topic :: Software Development
|
|
24
|
+
Requires-Python: >=3.9
|
|
25
|
+
Description-Content-Type: text/markdown
|
|
26
|
+
License-File: LICENSE
|
|
27
|
+
Provides-Extra: cloud
|
|
28
|
+
Requires-Dist: google-auth-oauthlib>=1.2.0; extra == "cloud"
|
|
29
|
+
Requires-Dist: google-auth>=2.29.0; extra == "cloud"
|
|
30
|
+
Provides-Extra: dev
|
|
31
|
+
Requires-Dist: build>=1.0; extra == "dev"
|
|
32
|
+
Requires-Dist: pytest>=7.0; extra == "dev"
|
|
33
|
+
Requires-Dist: ruff>=0.4; extra == "dev"
|
|
34
|
+
Dynamic: license-file
|
|
35
|
+
|
|
36
|
+
# Beacon
|
|
37
|
+
|
|
38
|
+
**Milestone-driven project dashboard for AI-assisted development**
|
|
39
|
+
|
|
40
|
+
AIアシスタント(Claude Code等)との開発セッションにおいて、マイルストーンベースのプロジェクト進捗を常時可視化し、方向性を見失わずに実装を進めるためのツール。
|
|
41
|
+
|
|
42
|
+
A real-time project dashboard that keeps milestone-based progress visible during AI-assisted development sessions (e.g., Claude Code), so you never lose sight of the bigger picture.
|
|
43
|
+
|
|
44
|
+

|
|
45
|
+
|
|
46
|
+
## Why Beacon?
|
|
47
|
+
|
|
48
|
+
**Beacon is not a task management tool.** If you need to plan tasks upfront and check them off, use Notion or Linear.
|
|
49
|
+
|
|
50
|
+
Beacon is built for a different workflow: **commit-driven, milestone-oriented development**. You set a milestone (the destination), then each developer — human or AI — autonomously decides what to do next, commits, and records progress. Tasks emerge from the work, not the other way around.
|
|
51
|
+
|
|
52
|
+
This matters especially in AI-assisted development, where sessions are short-lived and context is easily lost. Beacon keeps the bigger picture visible so that each session can pick up where the last one left off.
|
|
53
|
+
|
|
54
|
+
**Beaconはタスク管理ツールではありません。** タスクを事前に起票して消化していくなら、NotionやLinearを使ってください。
|
|
55
|
+
|
|
56
|
+
Beaconが想定するワークフローは**コミット駆動・マイルストーン指向の開発**です。まずマイルストーン(目的地)を設定し、開発者 — 人間でもAIでも — が自律的に次にやるべきことを判断し、コミットし、進捗を記録します。タスクは作業から生まれるものであり、事前に計画するものではありません。
|
|
57
|
+
|
|
58
|
+
これはAI駆動開発において特に重要です。セッションは短命でコンテキストは失われやすい。Beaconは全体像を常に可視化し、次のセッションが前回の続きからスムーズに再開できるようにします。
|
|
59
|
+
|
|
60
|
+
### Key Features
|
|
61
|
+
|
|
62
|
+
- **Always-visible dashboard** — Tauri Desktop App or Web UI shows live progress alongside your working shell
|
|
63
|
+
- **Audit trail** — every commit and task is recorded under a milestone, making AI session handoffs transparent and human-auditable
|
|
64
|
+
- **CLI-first design** — structured JSON output enables seamless integration with Claude Code Skills
|
|
65
|
+
|
|
66
|
+
## Requirements
|
|
67
|
+
|
|
68
|
+
- **Python 3.9+** (CLI core)
|
|
69
|
+
- **Git** (for commit tracking and worktree dispatch)
|
|
70
|
+
|
|
71
|
+
## Installation
|
|
72
|
+
|
|
73
|
+
Beacon ships in two forms that work independently:
|
|
74
|
+
|
|
75
|
+
- **Beacon Desktop** — Tauri-based UI app (`.dmg` / `.msi` / `.AppImage`) you double-click. CLI is bundled inside.
|
|
76
|
+
- **Beacon CLI** — command-line tool (`beacon`) for terminal users, AI agents, and CI.
|
|
77
|
+
|
|
78
|
+
### Quick install — pick your OS
|
|
79
|
+
|
|
80
|
+
| OS | Beacon Desktop | Beacon CLI |
|
|
81
|
+
|---|---|---|
|
|
82
|
+
| **macOS** | `brew install --cask beacon-desktop`<br>or download `.dmg` from [Releases](https://github.com/r-kida2/beacon/releases) | `brew install r-kida2/beacon/beacon`<br>or `pipx install beacon-ai` |
|
|
83
|
+
| **Windows** | `winget install BeaconAI.BeaconDesktop`<br>or download `.msi` from [Releases](https://github.com/r-kida2/beacon/releases) | `pipx install beacon-ai` |
|
|
84
|
+
| **Linux** | Download `.AppImage` from [Releases](https://github.com/r-kida2/beacon/releases) and `chmod +x` | `pipx install beacon-ai`<br>or Homebrew on Linux |
|
|
85
|
+
|
|
86
|
+
`pipx install beacon-ai` works natively on all three OSes — PowerShell-only Windows users get the full CLI without WSL2.
|
|
87
|
+
|
|
88
|
+
For cloud features (Google auth, team collaboration), add the `cloud` extra:
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
pipx install 'beacon-ai[cloud]'
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
See [INSTALL.md](INSTALL.md) for full details: tap setup for maintainers, code-signing status, SmartScreen workarounds, troubleshooting per OS.
|
|
95
|
+
|
|
96
|
+
## Quick Start
|
|
97
|
+
|
|
98
|
+
Run the setup wizard from your project directory:
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
cd your-project
|
|
102
|
+
beacon setup
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
`beacon setup` handles everything in one go:
|
|
106
|
+
1. **Sign in** with Google (for cloud features)
|
|
107
|
+
2. **Install** Claude Code Skills and hooks
|
|
108
|
+
3. **Initialize** a new local project — or **join** an existing cloud project
|
|
109
|
+
4. **Launch** the UI (Tauri Desktop App or Web UI)
|
|
110
|
+
|
|
111
|
+
### Path A: New local project
|
|
112
|
+
|
|
113
|
+
Choose option `1` in step 3. The wizard prompts for a project name and objective, then shows your status and UI pointers.
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
beacon setup
|
|
117
|
+
# → Step 3: Choose [1] New local project
|
|
118
|
+
# → Step 4: Show status + UI pointers? [Y]
|
|
119
|
+
beacon milestone add "First milestone"
|
|
120
|
+
beacon milestone start ms-1
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
For live progress visualization, use the [Tauri Desktop App](#desktop-app) or [Web UI](https://beacon-ai.dev) (after `beacon cloud push`).
|
|
124
|
+
The bare `beacon` command prints `beacon status` plus pointers to both front-ends.
|
|
125
|
+
|
|
126
|
+
To push to cloud later for Web UI access and team collaboration:
|
|
127
|
+
|
|
128
|
+
```bash
|
|
129
|
+
beacon cloud push
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### Path B: Join an existing cloud project (invited)
|
|
133
|
+
|
|
134
|
+
Choose option `2` in step 3 and enter the project ID shared by your team.
|
|
135
|
+
|
|
136
|
+
```bash
|
|
137
|
+
beacon setup
|
|
138
|
+
# → Step 3: Choose [2] Join a cloud project
|
|
139
|
+
# → Cloud project ID: your-project-abc123
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
Or skip the wizard and join directly:
|
|
143
|
+
|
|
144
|
+
```bash
|
|
145
|
+
beacon auth login
|
|
146
|
+
beacon cloud join your-project-abc123
|
|
147
|
+
beacon
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
> **Windows**: Use `beacon auth login` first (opens a browser). The rest of the commands work the same in PowerShell or CMD.
|
|
151
|
+
|
|
152
|
+
### Desktop App (optional)
|
|
153
|
+
|
|
154
|
+
The [Desktop App](#desktop-app) provides a native window for monitoring your project alongside your terminal.
|
|
155
|
+
|
|
156
|
+
### Multi-session DM (preview)
|
|
157
|
+
|
|
158
|
+
Beacon includes a real-time DM channel that lets parallel Claude Code
|
|
159
|
+
sessions talk to each other — across machines, across worktrees, across
|
|
160
|
+
projects. Open the same project on your Mac and your Windows box, and
|
|
161
|
+
the two sessions can directly hand off context without you copy-pasting.
|
|
162
|
+
|
|
163
|
+
`beacon setup` enables this automatically; `bclaude` is the recommended
|
|
164
|
+
launcher (it's the regular `claude` command with the DM channel wired
|
|
165
|
+
up). Don't want it? `beacon channel opt-out` keeps it off — globally
|
|
166
|
+
or per-project.
|
|
167
|
+
|
|
168
|
+
```bash
|
|
169
|
+
bclaude # launch Claude Code with DM enabled
|
|
170
|
+
beacon bus directory --live # see other live sessions in the project
|
|
171
|
+
beacon channel status # check install / opt-out state
|
|
172
|
+
beacon channel opt-out --global # disable everywhere, forever
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
See [`docs/getting-started-dm.md`](docs/getting-started-dm.md) for the
|
|
176
|
+
full walkthrough.
|
|
177
|
+
|
|
178
|
+
#### Forking a parallel session
|
|
179
|
+
|
|
180
|
+
When you want a second bclaude in a separate worktree — e.g. to give a
|
|
181
|
+
"difficult" milestone its own interactive session while you keep working
|
|
182
|
+
on the current one — use the `/beacon-session-fork` Skill, or call its
|
|
183
|
+
CLI helper directly:
|
|
184
|
+
|
|
185
|
+
```bash
|
|
186
|
+
beacon session fork ms-12 # creates .worktrees/ms-12-fork-<id>
|
|
187
|
+
# + .beacon/cloud.json + channel install
|
|
188
|
+
# + .beacon/fork.json (parent ↔ child link)
|
|
189
|
+
# then in a new terminal:
|
|
190
|
+
cd .worktrees/ms-12-fork-<id> && bclaude
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
The Skill (`/beacon-session-fork ms-12`) also auto-opens a new
|
|
194
|
+
Terminal.app / iTerm2 window on macOS and starts `bclaude` for you.
|
|
195
|
+
|
|
196
|
+
## Cloud Mode
|
|
197
|
+
|
|
198
|
+
Beacon can sync to the cloud for Web UI access at **https://beacon-ai.dev** and team collaboration. All CLI commands (`beacon log`, `beacon task`, etc.) automatically work through the cloud API.
|
|
199
|
+
|
|
200
|
+
### Team collaboration
|
|
201
|
+
|
|
202
|
+
The project owner can invite members from the Web UI (hamburger menu → Members). Members need to sign in at beacon-ai.dev first, then join via CLI.
|
|
203
|
+
|
|
204
|
+
| Role | Read | Write | Manage members |
|
|
205
|
+
|------|------|-------|----------------|
|
|
206
|
+
| owner | ✓ | ✓ | ✓ |
|
|
207
|
+
| editor | ✓ | ✓ | — |
|
|
208
|
+
| viewer | ✓ | — | — |
|
|
209
|
+
|
|
210
|
+
### Cloud commands
|
|
211
|
+
|
|
212
|
+
| Command | Description |
|
|
213
|
+
|---------|-------------|
|
|
214
|
+
| `beacon auth login` | Sign in with Google / Googleログイン |
|
|
215
|
+
| `beacon auth status` | Show login status / ログイン状態 |
|
|
216
|
+
| `beacon cloud push` | Upload project to cloud / クラウドにアップロード |
|
|
217
|
+
| `beacon cloud pull` | Download project from cloud / クラウドからダウンロード |
|
|
218
|
+
| `beacon cloud join <id>` | Join an existing cloud project / 既存プロジェクトに参加 |
|
|
219
|
+
| `beacon cloud list` | List cloud projects / クラウドプロジェクト一覧 |
|
|
220
|
+
| `beacon cloud status` | Show cloud config / クラウド設定表示 |
|
|
221
|
+
| `beacon cloud off` | Switch back to local mode / ローカルモードに戻す |
|
|
222
|
+
|
|
223
|
+
## CLI Commands
|
|
224
|
+
|
|
225
|
+
### Project
|
|
226
|
+
|
|
227
|
+
| Command | Description |
|
|
228
|
+
|---------|-------------|
|
|
229
|
+
| `beacon` | Show status + pointers to Tauri Desktop App / Web UI / ステータス+UIリンク表示 |
|
|
230
|
+
| `beacon setup` | First-time setup wizard (auth + hooks + project) / 初回セットアップ |
|
|
231
|
+
| `beacon init [--name n] [--objective o] [--storage local\|cloud]` | Initialize `.beacon/` (flags for non-interactive use) / プロジェクト作成 |
|
|
232
|
+
| `beacon status [--json]` | Show project status / ステータス表示 |
|
|
233
|
+
| `beacon skill install` | Install Claude Code Skills / Skillインストール |
|
|
234
|
+
| `beacon monitor context [--dry-run]` | Run the Stop hook context-usage threshold monitor (debug / 動作確認) |
|
|
235
|
+
| `beacon doctor` | Check PATH, hooks, Skills, auth, and cloud config / 環境ヘルスチェック |
|
|
236
|
+
| `beacon reset` | Move `.beacon/` to a timestamped backup (local only) / ローカルデータのリセット |
|
|
237
|
+
|
|
238
|
+
### Milestones
|
|
239
|
+
|
|
240
|
+
| Command | Description |
|
|
241
|
+
|---------|-------------|
|
|
242
|
+
| `beacon milestone add "title" [-d date]` | Add milestone / 追加 |
|
|
243
|
+
| `beacon milestone list` | List milestones / 一覧 |
|
|
244
|
+
| `beacon milestone start <id>` | Activate + auto-create `ms-XX-<slug>` branch + self-add as assignee (use `--no-branch` / `--no-assignee` to opt out) / アクティブ化+ブランチ自動作成+自己 assignee 登録 |
|
|
245
|
+
| `beacon milestone join <id> [--checkout]` | Add self as assignee (and optionally switch branch) / 他の MS に参加 |
|
|
246
|
+
| `beacon milestone done <id>` | Mark as done / 完了 |
|
|
247
|
+
| `beacon milestone close <id>` | Close milestone / クローズ |
|
|
248
|
+
| `beacon milestone observe <id>` | Set to observing / 監視中に設定 |
|
|
249
|
+
| `beacon milestone show <id> [--json]` | Show details / 詳細表示 |
|
|
250
|
+
| `beacon milestone update <id> [options]` | Update fields / 更新 |
|
|
251
|
+
| `beacon milestone delete <id>` | Logical delete (cancelled) / 論理削除 |
|
|
252
|
+
| `beacon milestone purge <id> --reason "..." [--index <n>]` | Hard delete a milestone record — recovery for duplicate-ID corruption (Issue #14) / ハード削除(重複ID復旧用) |
|
|
253
|
+
| `beacon milestone rename <id> "new title"` | Rename milestone / 名前変更 |
|
|
254
|
+
| `beacon milestone depends <id> --on <id>[,id]` | Set dependencies / 依存関係設定 |
|
|
255
|
+
| `beacon milestone graph [--json]` | Show dependency graph / 依存グラフ表示 |
|
|
256
|
+
| `beacon milestone workspace <id> [--executor ai\|human]` | Create git worktree for isolated development / worktree作成 |
|
|
257
|
+
| `beacon milestone workspace-cleanup <id>` | Remove worktree after work completes / worktree削除 |
|
|
258
|
+
|
|
259
|
+
### Tasks & Entries
|
|
260
|
+
|
|
261
|
+
| Command | Description |
|
|
262
|
+
|---------|-------------|
|
|
263
|
+
| `beacon task add "desc" [-m ms-id] [-t type] [-d detail]` | Add task to milestone / タスク追加 |
|
|
264
|
+
| `beacon task done <id> [-p progress]` | Mark as done / 完了 |
|
|
265
|
+
| `beacon task list [-m ms-id] [--json]` | List tasks / 一覧 |
|
|
266
|
+
| `beacon task show <id> [--json]` | Show details / 詳細 |
|
|
267
|
+
| `beacon task detail <id> [text]` | View/update detail / 詳細テキスト表示・更新 |
|
|
268
|
+
| `beacon task update <id> [options]` | Update fields / 更新 |
|
|
269
|
+
| `beacon task delete <id>` | Logical delete / 論理削除 |
|
|
270
|
+
| `beacon entry move <id> -t <task-id>` | Move entry under a task / タスク配下に移動 |
|
|
271
|
+
| `beacon entry purge <e-id> --reason "..." [--index <n>]` | Hard delete an entry record — recovery for duplicate-ID corruption (e-863) / ハード削除(重複ID復旧用) |
|
|
272
|
+
|
|
273
|
+
### Pull Requests
|
|
274
|
+
|
|
275
|
+
| Command | Description |
|
|
276
|
+
|---------|-------------|
|
|
277
|
+
| `beacon pr create [-m ms-id] [--intent "text"] [gh flags...]` | Run `gh pr create` and record the PR / PR作成+自動記録 |
|
|
278
|
+
| `beacon pr add <github-url> [-m ms-id] [--intent "text"]` | Register an existing PR / 既存PRを登録 |
|
|
279
|
+
| `beacon pr approve <entry-id> [--rationale "text"]` | Approve a PR (rationale required) / 承認 |
|
|
280
|
+
| `beacon pr request-changes <entry-id> [--rationale "text"]` | Request changes / 修正依頼 |
|
|
281
|
+
| `beacon pr reject <entry-id> [--rationale "text"]` | Reject a PR / 却下 |
|
|
282
|
+
| `beacon pr merge <entry-id>` | Mark as merged / マージ済みに設定 |
|
|
283
|
+
| `beacon pr close <entry-id>` | Close without merging / クローズ |
|
|
284
|
+
|
|
285
|
+
Use `/review` Claude Code Skill instead of `beacon pr review` for AI-assisted code review.
|
|
286
|
+
|
|
287
|
+
### Deploy
|
|
288
|
+
|
|
289
|
+
| Command | Description |
|
|
290
|
+
|---------|-------------|
|
|
291
|
+
| `beacon deploy record [--revision <rev>] [--semver <v1.0.0>] [--desc "text"]` | Record a deployment (auto major/minor detection) / デプロイ記録 |
|
|
292
|
+
| `beacon deploy list [--json]` | List deployment history / デプロイ履歴一覧 |
|
|
293
|
+
|
|
294
|
+
`beacon deploy record` automatically determines **major** (one or more milestones newly completed) vs **minor** (bug fix / patch to already-shipped milestones) based on commit history. The `/beacon-deploy` Skill wraps this with a two-phase prepare/finalize flow for AI-generated deploy descriptions.
|
|
295
|
+
|
|
296
|
+
### Code Releases (Push Log)
|
|
297
|
+
|
|
298
|
+
| Command | Description |
|
|
299
|
+
|---------|-------------|
|
|
300
|
+
| `beacon push record [--desc "text"]` | Record a git push (auto-collects commits since last push) / pushを記録 |
|
|
301
|
+
| `beacon push list [--json]` | List push history / push履歴一覧 |
|
|
302
|
+
|
|
303
|
+
The `/beacon-push` Skill wraps push recording with AI-generated value descriptions, triggered automatically by the PostToolUse hook after each `git push`.
|
|
304
|
+
|
|
305
|
+
### GitHub Issues
|
|
306
|
+
|
|
307
|
+
| Command | Description |
|
|
308
|
+
|---------|-------------|
|
|
309
|
+
| `beacon issue import <number> [-m ms-id]` | Import a GitHub Issue as a beacon task / IssueをBeaconタスクとして取り込み |
|
|
310
|
+
| `beacon issue sync [-m ms-id]` | Bulk import all open Issues not yet imported / 未インポートIssueを一括取り込み |
|
|
311
|
+
| `beacon issue list [--json]` | List open Issues not yet imported / 未インポートIssue一覧 |
|
|
312
|
+
|
|
313
|
+
Requires `gh` CLI authenticated. When a task linked to an Issue is marked done, beacon suggests closing the Issue via `gh issue close`.
|
|
314
|
+
|
|
315
|
+
### Documents
|
|
316
|
+
|
|
317
|
+
| Command | Description |
|
|
318
|
+
|---------|-------------|
|
|
319
|
+
| `beacon doc add "title" [--scope core\|spec\|memo] [--ms ms-id] [--op op-id] [--content text]` | Add document / ドキュメント追加 |
|
|
320
|
+
| `beacon doc list [--scope scope] [--ms ms-id] [--op op-id] [--json]` | List documents / 一覧 |
|
|
321
|
+
| `beacon doc show <doc-id>` | Show document / 内容表示 |
|
|
322
|
+
| `beacon doc update <doc-id> --content "text"` | Update document / 更新 |
|
|
323
|
+
|
|
324
|
+
Scopes: `core` (design principles / 設計原則), `spec` (technical specs / 仕様), `memo` (notes / メモ)
|
|
325
|
+
|
|
326
|
+
Use `--ms <ms-id>` to associate a document with a milestone, or `--op <op-id>` to associate with an Operation (e.g. log fetch instructions for `/beacon-operation-review`).
|
|
327
|
+
|
|
328
|
+
### Save (Non-commit actions)
|
|
329
|
+
|
|
330
|
+
| Command | Description |
|
|
331
|
+
|---------|-------------|
|
|
332
|
+
| `beacon save "desc" -m ms-id [--source src]` | Record a non-commit action / コミット以外の行為を記録 |
|
|
333
|
+
| `beacon save "desc" -m ms-id --hash <hash>` | Link save to a related commit / 関連コミットに紐づけ |
|
|
334
|
+
| `beacon save "desc" --source google_docs --url "..."` | Record with external resource / 外部リソース付きで記録 |
|
|
335
|
+
|
|
336
|
+
Sources: `manual` (default, AI self-report), `google_docs`, `notion`, `jupyter`, or any custom string.
|
|
337
|
+
|
|
338
|
+
### Logging
|
|
339
|
+
|
|
340
|
+
| Command | Description |
|
|
341
|
+
|---------|-------------|
|
|
342
|
+
| `beacon log [message] [-m ms-id]` | Record HEAD commit to milestone / コミット記録 |
|
|
343
|
+
| `beacon log --prepare` | Output context as JSON (read-only) / 判断材料出力 |
|
|
344
|
+
| `beacon log --finalize --progress N` | Write evaluation results / 評価結果書き込み (`--summary` was retired in e-1040 — see `project-vision` doc + session log) |
|
|
345
|
+
| `beacon summary [--json]` | View project summary (read-only). Writes retired in e-1040 — use `project-vision` doc + `beacon session log` |
|
|
346
|
+
| `beacon sync` | Auto-sync recent commits / 直近コミットを同期 |
|
|
347
|
+
| `beacon search <query> [-m ms-id] [--json]` | Full-text search across milestones, tasks, commits, PRs, and saves / 全文検索 |
|
|
348
|
+
|
|
349
|
+
### Operations
|
|
350
|
+
|
|
351
|
+
Operations track recurring operational workloads (daily batch jobs, incident management) — the "maintenance" layer alongside development Milestones.
|
|
352
|
+
|
|
353
|
+
| Command | Description |
|
|
354
|
+
|---------|-------------|
|
|
355
|
+
| `beacon operation open "title" [--schedule daily\|weekdays\|weekly] [--log-source name]` | Start a new Operation cycle / 新しいOperationを開始 |
|
|
356
|
+
| `beacon operation close <op-id>` | Close an Operation cycle / クローズ |
|
|
357
|
+
| `beacon operation purge <op-id> --reason "..." [--index <n>]` | Hard delete an operation record — recovery for duplicate-ID corruption (e-863) / ハード削除(重複ID復旧用) |
|
|
358
|
+
| `beacon operation list [--json]` | List Operations / 一覧 |
|
|
359
|
+
| `beacon operation show <op-id> [--json]` | Show Operation with entries + active envelope / 詳細表示(有効な envelope 含む) |
|
|
360
|
+
| `beacon operation approve <op-id> --spec <doc-id> [--expires-at YYYY-MM-DD] [--json]` | Mint T2 envelope from SPEC doc's `approved_actions` (ms-60) / SPEC ドキュメントの許可 action 一覧から T2 envelope を発行 |
|
|
361
|
+
| `beacon operation revoke <op-id> [--envelope-id ENV] [--reason TEXT] [--json]` | Invalidate the active envelope (or a specific one) / 有効な envelope を無効化 |
|
|
362
|
+
| `beacon operation envelope verify <op-id> <action> [--json]` | AI self-check used by `/beacon-operation-execute` — is the action permitted by the active envelope? (ms-60 / e-1340) / 指定 action が envelope の許可範囲か判定 |
|
|
363
|
+
| `beacon run record -o <op-id> --batch <name> --status ok\|warning\|error --desc "..."` | Record a batch run result / バッチ実行結果を記録 |
|
|
364
|
+
| `beacon run list -o <op-id> [--json]` | List run records / 実行記録一覧 |
|
|
365
|
+
| `beacon incident open "title" -o <op-id> [--desc "..."]` | Open an incident / インシデント起票 |
|
|
366
|
+
| `beacon incident close <id> --resolution "..."` | Resolve an incident / インシデント解決 |
|
|
367
|
+
| `beacon incident escalate <id> -m <ms-id>` | Escalate incident to a Milestone task / Milestoneタスクに昇格 |
|
|
368
|
+
|
|
369
|
+
The `/beacon-operation-setup` Skill walks through setup conversationally and auto-generates a SPEC document (log fetch instructions). The `/beacon-operation-review` Skill reads that SPEC, fetches logs, interprets them, and records the result — triggered automatically by `operation_check_<op-id>` triggers at session start.
|
|
370
|
+
|
|
371
|
+
### Session Notes
|
|
372
|
+
|
|
373
|
+
Ephemeral memos that survive context compaction within a session — cleared at session end.
|
|
374
|
+
|
|
375
|
+
| Command | Description |
|
|
376
|
+
|---------|-------------|
|
|
377
|
+
| `beacon note "text" [--context "label"]` | Add a session note / セッションメモ追加 |
|
|
378
|
+
| `beacon note list [--json]` | Show session notes / メモ一覧 |
|
|
379
|
+
| `beacon note clear` | Clear all session notes / 全削除 |
|
|
380
|
+
|
|
381
|
+
Say "メモして" or "remember this" and Claude will call `/beacon-note` automatically. At session end, `/beacon-session-end` prompts to promote important notes to permanent Documents before clearing.
|
|
382
|
+
|
|
383
|
+
### Retrospectives
|
|
384
|
+
|
|
385
|
+
| Command | Description |
|
|
386
|
+
|---------|-------------|
|
|
387
|
+
| `beacon retro [--since DATE] [--until DATE]` | Generate weekly retro data / 週次振り返りデータ生成 |
|
|
388
|
+
| `beacon retro done` | Mark current retro as reviewed / 振り返りレビュー済み |
|
|
389
|
+
|
|
390
|
+
### Triggers
|
|
391
|
+
|
|
392
|
+
| Command | Description |
|
|
393
|
+
|---------|-------------|
|
|
394
|
+
| `beacon trigger fire <name> [message]` | Fire a trigger (used by dashboard) / トリガー発火 |
|
|
395
|
+
| `beacon trigger check` | Check pending triggers (JSON) / 未処理トリガー確認 |
|
|
396
|
+
| `beacon trigger clear <name>` | Clear a specific trigger / トリガー消化 |
|
|
397
|
+
|
|
398
|
+
### DM Channel (multi-session messaging)
|
|
399
|
+
|
|
400
|
+
Manage the `beacon-bus` MCP channel that powers parallel-session DM. See
|
|
401
|
+
[`docs/getting-started-dm.md`](docs/getting-started-dm.md) for the full
|
|
402
|
+
walkthrough.
|
|
403
|
+
|
|
404
|
+
| Command | Description |
|
|
405
|
+
|---------|-------------|
|
|
406
|
+
| `beacon channel install` | Install beacon-bus MCP entry into `.mcp.json` / DM 機能を有効化 |
|
|
407
|
+
| `beacon channel uninstall [--purge-files\|--keep-files]` | Remove MCP entry; `--purge-files` also moves `channel/node_modules` to `.trash/` |
|
|
408
|
+
| `beacon channel opt-out [--project\|--global]` | Block install / auto-install (persistent flag) |
|
|
409
|
+
| `beacon channel opt-in [--project\|--global]` | Lift the opt-out flag |
|
|
410
|
+
| `beacon channel status` | Show install / files / opt-out / next-action state |
|
|
411
|
+
|
|
412
|
+
`bclaude` (shipped alongside `beacon` in Homebrew) launches Claude Code
|
|
413
|
+
with the channel pre-wired, and falls back to plain `claude` when any
|
|
414
|
+
opt-out source is active.
|
|
415
|
+
|
|
416
|
+
## Dashboard
|
|
417
|
+
|
|
418
|
+
Beacon's visual UI is split across two front-ends:
|
|
419
|
+
|
|
420
|
+
- **[Tauri Desktop App](#desktop-app)** — cross-platform native window for monitoring milestones, tasks, and entries.
|
|
421
|
+
- **[Web UI](https://beacon-ai.dev)** — browser-based dashboard for cloud-linked projects (after `beacon cloud push`).
|
|
422
|
+
|
|
423
|
+
The legacy curses dashboard (`lib/dashboard.py`, tmux split-pane) was retired in e-764 and archived to `.trash/lib-dashboard-py-e764/`. The bare `beacon` command now prints status plus pointers to the two supported UIs.
|
|
424
|
+
|
|
425
|
+
## Claude Code Integration
|
|
426
|
+
|
|
427
|
+
Beacon ships with [Claude Code Skills](https://docs.anthropic.com/en/docs/claude-code) for automated project tracking. `beacon setup` installs them automatically; you can also run `beacon skill install` at any time to update.
|
|
428
|
+
|
|
429
|
+
| Skill | Description |
|
|
430
|
+
|-------|-------------|
|
|
431
|
+
| `beacon-session-start` | Restore project context at session start / セッション開始時にコンテキスト復元 |
|
|
432
|
+
| `beacon-log` | Record commits with AI-evaluated progress and summary / コミット記録+AI進捗評価 |
|
|
433
|
+
| `beacon-task` | Task CRUD operations / タスク操作 |
|
|
434
|
+
| `beacon-session-end` | Update summary and organize open tasks / サマリー更新+未完了整理 |
|
|
435
|
+
| `beacon-deploy` | Record a deployment with AI-generated description / AI説明付きデプロイ記録 |
|
|
436
|
+
| `beacon-push` | Record a git push with AI-generated value description / AI説明付きpush記録 |
|
|
437
|
+
| `beacon-retro` | Generate and discuss weekly retrospective / 週次振り返りドキュメント生成 |
|
|
438
|
+
| `beacon-dispatch` | Identify executable milestones and launch parallel sub-agents / 並列サブエージェント起動 |
|
|
439
|
+
| `beacon-init` | Conversational project initialization with Project Archaeology / 会話形式プロジェクト初期化 |
|
|
440
|
+
| `beacon-note` | Record an ephemeral session memo (auto-triggered by "メモして") / セッションメモ記録 |
|
|
441
|
+
| `beacon-operation-setup` | Conversational Operation setup with auto-generated SPEC doc / 会話形式でOperation作成+SPEC自動生成 |
|
|
442
|
+
| `beacon-operation-review` | Fetch logs per SPEC, interpret, and record run result / SPECに従いログ取得→解釈→run record記録 |
|
|
443
|
+
| `beacon-spec` | Conversational SPEC (requirements / decision trail) authoring + task breakdown / 対話駆動SPEC作成+タスク一括起票 |
|
|
444
|
+
| `beacon-retrospect` | Query project history in natural language ("did we build X? how?") / プロジェクト史を自然言語で検索 |
|
|
445
|
+
| `beacon-vision` | Refine a fuzzy idea into a structured project vision (CORE doc) / ふわっとした構想をビジョンに精緻化 |
|
|
446
|
+
| `beacon-roadmap` | Design a set of milestones (3–7) toward the project vision / 大目的に向けたマイルストーン群を設計 |
|
|
447
|
+
| `beacon-pr-create` | Conversational PR creation (intent capture + branch/commit checks) / 対話形式でPR作成 |
|
|
448
|
+
| `beacon-incident-report` | Close an incident and save a cause/response/prevention report / インシデントclose+レポート作成 |
|
|
449
|
+
|
|
450
|
+
### Two-phase workflow
|
|
451
|
+
|
|
452
|
+
Skills use a **prepare/finalize** pattern to keep AI judgment structured:
|
|
453
|
+
|
|
454
|
+
1. `beacon log --prepare` (or `beacon deploy record --prepare`, `beacon push record --prepare`) outputs context as JSON
|
|
455
|
+
2. The Skill prompts Claude to generate a summary, deploy description, or push description
|
|
456
|
+
3. `beacon log --finalize` (or `beacon deploy record --finalize`, `beacon push record --desc "..."`) writes the result
|
|
457
|
+
|
|
458
|
+
This design ensures AI-generated content is channeled through deterministic CLI operations, not free-form file edits.
|
|
459
|
+
|
|
460
|
+
## Desktop App
|
|
461
|
+
|
|
462
|
+
Beacon includes a native desktop application built with [Tauri](https://tauri.app/) for local, cross-platform project monitoring without a browser.
|
|
463
|
+
|
|
464
|
+
```bash
|
|
465
|
+
cd desktop
|
|
466
|
+
npm install
|
|
467
|
+
npm run tauri dev # Development
|
|
468
|
+
npm run tauri build # Production (.app/.dmg on macOS)
|
|
469
|
+
```
|
|
470
|
+
|
|
471
|
+
The Desktop App uses the same beacon CLI as its backend and supports both local and cloud projects. It features the same tabs as the Web UI: Milestones, Graph, Reviews, and Documents.
|
|
472
|
+
|
|
473
|
+
## Data Model
|
|
474
|
+
|
|
475
|
+
All project state lives in `.beacon/project.json`. See [SPEC.md](docs/SPEC.md) for the full schema.
|
|
476
|
+
|
|
477
|
+
```
|
|
478
|
+
.beacon/
|
|
479
|
+
project.json # Project state (milestones, entries, summary)
|
|
480
|
+
config.json # Mode config: local or cloud
|
|
481
|
+
cloud.json # Cloud project binding (project_id, api_url)
|
|
482
|
+
documents/ # Project documents (Markdown with YAML frontmatter)
|
|
483
|
+
retro/ # Weekly retrospective documents
|
|
484
|
+
triggers/ # Async message queue (dashboard <-> Claude Code)
|
|
485
|
+
```
|
|
486
|
+
|
|
487
|
+
## Doc & Skill auto-sync scope (ms-10 e-722)
|
|
488
|
+
|
|
489
|
+
To prevent doc drift, three guards run automatically (pre-commit hook + CI
|
|
490
|
+
`lint-docs` workflow):
|
|
491
|
+
|
|
492
|
+
| Guard | What it checks |
|
|
493
|
+
|-------|----------------|
|
|
494
|
+
| `scripts/check-skill-drift.py` | `skills/*.md` in the repo matches `~/.claude/skills/<name>/SKILL.md`. Repair: `beacon skill install` (or set `BEACON_AUTO_SKILL_INSTALL=1` to auto-run from the hook). Also surfaced by `beacon doctor` check #6. |
|
|
495
|
+
| `scripts/check-cli-help-drift.py` | The set of `(subcommand, subsubcommand)` pairs is consistent across `bin/beacon` usage, `cmd_help_json` (`beacon help --json`), and the README `## CLI Commands` tables. Intentional asymmetries are listed inline as allowlists. |
|
|
496
|
+
| `scripts/check-install-md.py` | `INSTALL.md` bash blocks don't use deprecated flags (e.g. `gcloud run deploy --build-arg` — gcloud wants `--set-build-env-vars`). Brew / pipx commands have a package positional. |
|
|
497
|
+
|
|
498
|
+
**Explicitly out of scope** (these still need a human reviewer):
|
|
499
|
+
|
|
500
|
+
- Whether a CLI flag's **description text** is accurate — the guard only
|
|
501
|
+
checks that the flag exists in `--help`, not what it means.
|
|
502
|
+
- Whether the README's prose paragraphs (Why Beacon?, Quick Start, etc.)
|
|
503
|
+
reflect the latest behavior — only the CLI tables are diffed.
|
|
504
|
+
- Skill body content review — drift detection only catches "you forgot to
|
|
505
|
+
run `beacon skill install`", not "this Skill's instructions became wrong".
|
|
506
|
+
|
|
507
|
+
Catch-up sweeps (manual doc audits) are still useful when the scope
|
|
508
|
+
above misses something, but the day-to-day drift surface should now stay
|
|
509
|
+
clean by construction.
|
|
510
|
+
|
|
511
|
+
## License
|
|
512
|
+
|
|
513
|
+
[MIT](LICENSE)
|