prism-kit 0.3.0__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.
Files changed (50) hide show
  1. prism_kit-0.3.0/LICENSE +21 -0
  2. prism_kit-0.3.0/MANIFEST.in +6 -0
  3. prism_kit-0.3.0/PKG-INFO +232 -0
  4. prism_kit-0.3.0/README.md +208 -0
  5. prism_kit-0.3.0/THIRD_PARTY_NOTICES.md +11 -0
  6. prism_kit-0.3.0/prism_cli/__init__.py +5 -0
  7. prism_kit-0.3.0/prism_cli/__main__.py +5 -0
  8. prism_kit-0.3.0/prism_cli/assets/VENDOR.md +10 -0
  9. prism_kit-0.3.0/prism_cli/assets/force-graph.LICENSE.txt +21 -0
  10. prism_kit-0.3.0/prism_cli/assets/force-graph.min.js +5 -0
  11. prism_kit-0.3.0/prism_cli/assets/graph_template.html +3633 -0
  12. prism_kit-0.3.0/prism_cli/assets/workflow-v1.json +837 -0
  13. prism_kit-0.3.0/prism_cli/board_cli.py +175 -0
  14. prism_kit-0.3.0/prism_cli/board_mcp.py +360 -0
  15. prism_kit-0.3.0/prism_cli/board_reads.py +737 -0
  16. prism_kit-0.3.0/prism_cli/board_server.py +1099 -0
  17. prism_kit-0.3.0/prism_cli/board_service.py +4593 -0
  18. prism_kit-0.3.0/prism_cli/board_store.py +411 -0
  19. prism_kit-0.3.0/prism_cli/cli.py +2374 -0
  20. prism_kit-0.3.0/prism_cli/fs_safety.py +72 -0
  21. prism_kit-0.3.0/prism_cli/graph_server.py +183 -0
  22. prism_kit-0.3.0/prism_cli/manifest_update.py +254 -0
  23. prism_kit-0.3.0/prism_cli/presets.py +87 -0
  24. prism_kit-0.3.0/prism_cli/render.py +418 -0
  25. prism_kit-0.3.0/prism_cli/schemas/envelope-v1.json +86 -0
  26. prism_kit-0.3.0/prism_cli/schemas/status-v1.json +86 -0
  27. prism_kit-0.3.0/prism_cli/schemas/wiki-graph-v1.json +346 -0
  28. prism_kit-0.3.0/prism_cli/schemas/wiki-lint-v1.json +96 -0
  29. prism_kit-0.3.0/prism_cli/schemas/wiki-query-v1.json +94 -0
  30. prism_kit-0.3.0/prism_cli/schemas/wiki-transition-preflight-v1.json +264 -0
  31. prism_kit-0.3.0/prism_cli/status.py +697 -0
  32. prism_kit-0.3.0/prism_cli/ui.py +595 -0
  33. prism_kit-0.3.0/prism_cli/wiki_graph.py +573 -0
  34. prism_kit-0.3.0/prism_cli/wiki_graph_html.py +45 -0
  35. prism_kit-0.3.0/prism_cli/wiki_links.py +57 -0
  36. prism_kit-0.3.0/prism_cli/wiki_lint.py +1306 -0
  37. prism_kit-0.3.0/prism_cli/wiki_model.py +914 -0
  38. prism_kit-0.3.0/prism_cli/wiki_query.py +340 -0
  39. prism_kit-0.3.0/prism_cli/wiki_transitions.py +2315 -0
  40. prism_kit-0.3.0/prism_cli/workflow_assets.py +224 -0
  41. prism_kit-0.3.0/prism_cli/workflow_install.py +950 -0
  42. prism_kit-0.3.0/prism_cli/workspace.py +762 -0
  43. prism_kit-0.3.0/prism_kit.egg-info/PKG-INFO +232 -0
  44. prism_kit-0.3.0/prism_kit.egg-info/SOURCES.txt +48 -0
  45. prism_kit-0.3.0/prism_kit.egg-info/dependency_links.txt +1 -0
  46. prism_kit-0.3.0/prism_kit.egg-info/entry_points.txt +2 -0
  47. prism_kit-0.3.0/prism_kit.egg-info/requires.txt +9 -0
  48. prism_kit-0.3.0/prism_kit.egg-info/top_level.txt +1 -0
  49. prism_kit-0.3.0/pyproject.toml +39 -0
  50. prism_kit-0.3.0/setup.cfg +4 -0
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Mortitech
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,6 @@
1
+ # The source archive is an installable CLI artifact. Repository fixtures and
2
+ # checkout-only validation tests stay in the repository and CI.
3
+ prune tests
4
+ # The npm launcher is published separately from its own folder.
5
+ prune npm
6
+ include LICENSE THIRD_PARTY_NOTICES.md
@@ -0,0 +1,232 @@
1
+ Metadata-Version: 2.4
2
+ Name: prism-kit
3
+ Version: 0.3.0
4
+ Summary: Prism workflows and shared boards for humans and agents, with optional application generation.
5
+ License-Expression: MIT
6
+ Project-URL: Homepage, https://github.com/mo0rti/prism
7
+ Project-URL: Documentation, https://github.com/mo0rti/prism/blob/main/docs/README.md
8
+ Project-URL: Issues, https://github.com/mo0rti/prism/issues
9
+ Project-URL: Changelog, https://github.com/mo0rti/prism/blob/main/CHANGELOG.md
10
+ Requires-Python: >=3.10
11
+ Description-Content-Type: text/markdown
12
+ License-File: LICENSE
13
+ License-File: THIRD_PARTY_NOTICES.md
14
+ License-File: prism_cli/assets/force-graph.LICENSE.txt
15
+ Requires-Dist: PyYAML<7,>=6
16
+ Requires-Dist: copier<10,>=9
17
+ Requires-Dist: jinja2-time<1,>=0.2
18
+ Requires-Dist: mcp==2.2.0
19
+ Requires-Dist: starlette<2,>=0.48
20
+ Requires-Dist: uvicorn<1,>=0.34
21
+ Provides-Extra: e2e
22
+ Requires-Dist: playwright<2,>=1.50; extra == "e2e"
23
+ Dynamic: license-file
24
+
25
+ # Prism: One spec. Every platform.
26
+
27
+ ![Version](https://img.shields.io/badge/version-0.3.0-blue)
28
+ ![Status](https://img.shields.io/badge/status-in%20development-2ea44f)
29
+ ![Template Validation](https://github.com/mo0rti/prism/actions/workflows/template-validation.yml/badge.svg)
30
+ ![Python](https://img.shields.io/badge/python-%3E%3D3.10-3776AB?logo=python&logoColor=white)
31
+ ![Repo Type](https://img.shields.io/badge/repo-template%20%2B%20CLI-6f42c1)
32
+ ![License](https://img.shields.io/badge/license-MIT-blue)
33
+
34
+ ![Prism](https://raw.githubusercontent.com/mo0rti/prism/main/docs/media/prism.png)
35
+
36
+ Prism is a shared workflow and board for humans and agents. Product knowledge,
37
+ questions, evidence, and delivery state live in the repository's wiki. Application
38
+ template generation is an optional way to start a workspace.
39
+
40
+ It helps product and engineering teams:
41
+
42
+ - carry work through PO, design, and development using shared evidence and explicit handoffs
43
+ - connect coding agents through standard MCP and the same versioned Prism skills
44
+ - review and confirm supported human actions directly in the board
45
+ - optionally generate backend, web, Android, and iOS foundations
46
+
47
+ This repository contains Prism's CLI, workflow service, board, and application template.
48
+ It is the maintainer repository, not a workspace for running product lifecycle actions.
49
+
50
+ Follow the [quickstart](https://github.com/mo0rti/prism/blob/main/README.md#quickstart-a-shared-board-for-you-and-your-agents) to adopt the
51
+ workflow in an existing repository or an empty workspace. The
52
+ [shared board guide](https://github.com/mo0rti/prism/blob/main/docs/shared-board.md) has the details, and
53
+ [current status](https://github.com/mo0rti/prism/blob/main/docs/current-status.md) records what is verified and what is open.
54
+
55
+ ## Quickstart: a shared board for you and your agents
56
+
57
+ Prism runs on one computer. One local service per workspace serves the browser board and an MCP endpoint, so you and your coding agents work on the same wiki. Prism needs Python 3.10 or later; [uv](https://docs.astral.sh/uv/) installs one when none is present. Install it from PyPI as `prism-kit`, which provides the `prism` command:
58
+
59
+ ```bash
60
+ uv tool install prism-kit
61
+ prism --version
62
+ ```
63
+
64
+ `pipx install prism-kit` and `pip install prism-kit` work as well. To run Prism without installing Python tooling, use the npm launcher: `npx @mortitech/prism <command>` runs the same release through uv, which it downloads once after checking its SHA-256 when uv is not already installed. The rest of this page writes `prism <command>`.
65
+
66
+ **From source (contributors).** Clone the repository and install it in editable mode:
67
+
68
+ ```bash
69
+ git clone https://github.com/mo0rti/prism.git
70
+ cd prism
71
+ pip install -e .
72
+ ```
73
+
74
+ Run the remaining steps in a separate workspace folder, not in this maintainer checkout and not in a cloud-synced folder such as OneDrive.
75
+
76
+ **1. Add the workflow.** Use an empty folder or an existing repository. Choose a display name and one scope; `--platform` takes one of the five platform IDs and does not generate an application. The first command previews every file. The second asks you to confirm before it writes (`--apply --yes` skips the question for automation).
77
+
78
+ ```bash
79
+ cd path/to/your-workspace
80
+ prism workflow install . --name "My workspace" --platform backend
81
+ prism workflow install . --name "My workspace" --platform backend --apply
82
+ ```
83
+
84
+ **2. Check readiness.** The "Shared board" section lists what needs attention, each with a `Fix:` line. A warning that no grant exists yet is expected at this point.
85
+
86
+ ```bash
87
+ prism doctor --workspace .
88
+ ```
89
+
90
+ **3. Register a person and an agent.** Each command prints JSON whose `token` appears once. Keep tokens private and out of files and prompts. A grant without `--write` is read-only.
91
+
92
+ ```bash
93
+ prism board grant "Product owner" --kind human --write --path .
94
+ prism board grant "Coding agent" --kind agent --write --path .
95
+ ```
96
+
97
+ Put the agent's token in an environment variable before you start the agent host:
98
+
99
+ ```bash
100
+ export PRISM_BOARD_TOKEN="<the agent's token>" # macOS, Linux, Git Bash
101
+ $env:PRISM_BOARD_TOKEN = "<the agent's token>" # PowerShell
102
+ ```
103
+
104
+ **4. Start the board.**
105
+
106
+ ```bash
107
+ prism board serve . --port 8765
108
+ ```
109
+
110
+ It prints the board URL, the MCP endpoint (`http://127.0.0.1:8765/mcp`) and a hint for issuing another grant, then opens your browser (`--no-open` skips that). Sign in with the human token. Press Ctrl+C to stop. The service listens on loopback only.
111
+
112
+ **5. Connect Claude Code and Codex.** Both use their standard Streamable HTTP MCP configuration with that endpoint and `PRISM_BOARD_TOKEN`. The exact entries are in [Connect an agent host](https://github.com/mo0rti/prism/blob/main/docs/shared-board.md#connect-an-agent-host). Give each host its own grant, and start the host from a shell where the variable is set. [Agent hosts](https://github.com/mo0rti/prism/blob/main/docs/agent-hosts.md) lists the tested versions, settings and known limitations.
113
+
114
+ **6. Run a first journey.**
115
+
116
+ 1. Ask the agent to run Prism's `setup-project` skill. Setup is an interview that writes the product context directly into the workspace, so it does not go through the board.
117
+ 2. Create a folder such as `knowledge/intake/pending/my-first-feature/` and put your brief in it as a Markdown file, using `knowledge/intake/pending/PO_BRIEF_TEMPLATE.md` as a guide. Then ask the agent: "Use Prism's PO intake skill to refine the pending brief." The agent shows the exact file changes, you confirm them in the agent, and it applies them. A new feature appears on the board.
118
+ 3. In the board, move the feature with `po-handoff` (drag its card or use its action control). Review the evidence and exact changes, acknowledge them and confirm. The board offers the same human action for `design-start` and `dev-start`. The remaining steps run through the agent's skills.
119
+
120
+ If a step fails, [docs/troubleshooting.md](https://github.com/mo0rti/prism/blob/main/docs/troubleshooting.md) lists the symptom, cause and fix for the common cases. The [shared board guide](https://github.com/mo0rti/prism/blob/main/docs/shared-board.md) covers every command, the MCP tools and recovery of interrupted operations, and [SECURITY.md](https://github.com/mo0rti/prism/blob/main/SECURITY.md) describes what the local service protects.
121
+
122
+ ![Prism wiki visualization Graph view](https://raw.githubusercontent.com/mo0rti/prism/main/docs/media/wiki-dashboard-graph.png)
123
+
124
+ _Graph view from the synthetic local TreasuryFlow fixture._
125
+
126
+ To explore a populated example first, follow the [local wiki visualization guide](https://github.com/mo0rti/prism/blob/main/docs/wiki-visualization.md). It builds a synthetic TreasuryFlow fixture that is safe to regenerate.
127
+
128
+ ## Optional: generate an application
129
+
130
+ Application generation is separate from the shared board. Run `prism` for the home screen, or `prism new` for the guided flow.
131
+
132
+ A Prism-generated repository can include:
133
+
134
+ - **Backend**: Spring Boot 4, Kotlin 2.2+, Java 21
135
+ - **User Web App**: Next.js + TypeScript
136
+ - **Admin Web Portal**: Next.js + TypeScript
137
+ - **Android**: Kotlin + Jetpack Compose
138
+ - **iOS**: Swift + SwiftUI
139
+
140
+ Every generated repository also includes:
141
+
142
+ - a living product wiki under `knowledge/wiki/`
143
+ - generated AI context for Claude, Codex, and Cursor
144
+ - lifecycle commands for PO, design, dev, and advisory review
145
+ - project docs, generators, and workflow wiring
146
+
147
+ ![Prism home screen](https://raw.githubusercontent.com/mo0rti/prism/main/docs/media/prism-menu.png)
148
+
149
+ From the Prism home screen:
150
+
151
+ - choose `Doctor` to check prerequisites
152
+ - choose `New Project` to generate a sample repo
153
+ - choose `Browse Presets` if you want to browse the recommended starting paths first
154
+
155
+ ![Prism guided project creation](https://raw.githubusercontent.com/mo0rti/prism/main/docs/media/prism-new-project.png)
156
+
157
+ After generating a project:
158
+
159
+ 1. open the generated repository
160
+ 2. inspect `README.md`, `CONTEXT.md`, and `knowledge/wiki/SCHEMA.md`
161
+ 3. initialize the workflow with:
162
+ - Claude Code: `/setup-project`
163
+ - Codex: `$setup-project`
164
+ - Cursor: ask the agent to run `setup-project`
165
+ 4. to enable the shared board and MCP writes, preview `prism workflow upgrade .`,
166
+ then confirm with `prism workflow upgrade . --apply` and register participants
167
+ as in the quickstart above.
168
+
169
+ For the full first-run path, read [docs/getting-started.md](https://github.com/mo0rti/prism/blob/main/docs/getting-started.md).
170
+
171
+ ## Start Here By Goal
172
+
173
+ ### I want a board for humans and coding agents
174
+
175
+ Read the [shared board guide](https://github.com/mo0rti/prism/blob/main/docs/shared-board.md), then the
176
+ [wiki workflow](https://github.com/mo0rti/prism/blob/main/docs/wiki-workflow.md). The local service shares one workspace
177
+ between the browser and standard MCP clients.
178
+
179
+ ### I want to generate a project and evaluate Prism
180
+
181
+ Read these first:
182
+
183
+ 1. [docs/getting-started.md](https://github.com/mo0rti/prism/blob/main/docs/getting-started.md)
184
+ 2. [docs/questionnaire.md](https://github.com/mo0rti/prism/blob/main/docs/questionnaire.md)
185
+ 3. [docs/generated-projects.md](https://github.com/mo0rti/prism/blob/main/docs/generated-projects.md)
186
+
187
+ ### I already have a generated Prism project
188
+
189
+ Read these first:
190
+
191
+ 1. `README.md` inside the generated repository
192
+ 2. `CONTEXT.md` inside the generated repository
193
+ 3. [docs/generated-projects.md](https://github.com/mo0rti/prism/blob/main/docs/generated-projects.md)
194
+ 4. [docs/wiki-workflow.md](https://github.com/mo0rti/prism/blob/main/docs/wiki-workflow.md)
195
+
196
+ ### I want to understand the Prism operating model
197
+
198
+ Read these in order:
199
+
200
+ 1. [docs/prism-model.md](https://github.com/mo0rti/prism/blob/main/docs/prism-model.md)
201
+ 2. [docs/wiki-workflow.md](https://github.com/mo0rti/prism/blob/main/docs/wiki-workflow.md)
202
+ 3. [docs/ai-surfaces.md](https://github.com/mo0rti/prism/blob/main/docs/ai-surfaces.md)
203
+
204
+ ### I want to maintain or improve Prism itself
205
+
206
+ Start with:
207
+
208
+ 1. [docs/maintainer-workflow.md](https://github.com/mo0rti/prism/blob/main/docs/maintainer-workflow.md)
209
+ 2. [docs/current-status.md](https://github.com/mo0rti/prism/blob/main/docs/current-status.md)
210
+ 3. [docs/README.md](https://github.com/mo0rti/prism/blob/main/docs/README.md)
211
+
212
+ ## Current Status
213
+
214
+ - The workflow, the shared board, the MCP tool contract and the human board actions are implemented and tested; the [plan](https://github.com/mo0rti/prism/blob/main/docs/prism-core-workflow-plan.md) states their scope and contracts.
215
+ - Application samples: backend, Android and web are verified locally, and the iOS sample is verified only by the macOS CI job, which has not run yet. Live Cloudflare and Azure deployments are unverified, and Apple Sign-In is experimental.
216
+ - Core acceptance uses disposable neutral workspaces. Sample behavior does not define the core workflow.
217
+ - Prism is released under the MIT license and published to PyPI as `prism-kit`, with the `@mortitech/prism` launcher on npm. The [changelog](https://github.com/mo0rti/prism/blob/main/CHANGELOG.md) lists what each version contains.
218
+
219
+ For the detailed status, read [docs/current-status.md](https://github.com/mo0rti/prism/blob/main/docs/current-status.md).
220
+
221
+ ## Learn More
222
+
223
+ For the full documentation index, read [docs/README.md](https://github.com/mo0rti/prism/blob/main/docs/README.md).
224
+
225
+ ## Related Repo Files
226
+
227
+ - [AGENTS.md](https://github.com/mo0rti/prism/blob/main/AGENTS.md) for Codex maintainer guidance in this repo
228
+ - [CLAUDE.md](https://github.com/mo0rti/prism/blob/main/CLAUDE.md) for Claude maintainer guidance in this repo
229
+
230
+ ## License
231
+
232
+ Prism is released under the [MIT license](https://github.com/mo0rti/prism/blob/main/LICENSE), copyright 2026 Mortitech. The vendored force-graph library keeps its own MIT license; see [third-party notices](https://github.com/mo0rti/prism/blob/main/THIRD_PARTY_NOTICES.md).
@@ -0,0 +1,208 @@
1
+ # Prism: One spec. Every platform.
2
+
3
+ ![Version](https://img.shields.io/badge/version-0.3.0-blue)
4
+ ![Status](https://img.shields.io/badge/status-in%20development-2ea44f)
5
+ ![Template Validation](https://github.com/mo0rti/prism/actions/workflows/template-validation.yml/badge.svg)
6
+ ![Python](https://img.shields.io/badge/python-%3E%3D3.10-3776AB?logo=python&logoColor=white)
7
+ ![Repo Type](https://img.shields.io/badge/repo-template%20%2B%20CLI-6f42c1)
8
+ ![License](https://img.shields.io/badge/license-MIT-blue)
9
+
10
+ ![Prism](https://raw.githubusercontent.com/mo0rti/prism/main/docs/media/prism.png)
11
+
12
+ Prism is a shared workflow and board for humans and agents. Product knowledge,
13
+ questions, evidence, and delivery state live in the repository's wiki. Application
14
+ template generation is an optional way to start a workspace.
15
+
16
+ It helps product and engineering teams:
17
+
18
+ - carry work through PO, design, and development using shared evidence and explicit handoffs
19
+ - connect coding agents through standard MCP and the same versioned Prism skills
20
+ - review and confirm supported human actions directly in the board
21
+ - optionally generate backend, web, Android, and iOS foundations
22
+
23
+ This repository contains Prism's CLI, workflow service, board, and application template.
24
+ It is the maintainer repository, not a workspace for running product lifecycle actions.
25
+
26
+ Follow the [quickstart](https://github.com/mo0rti/prism/blob/main/README.md#quickstart-a-shared-board-for-you-and-your-agents) to adopt the
27
+ workflow in an existing repository or an empty workspace. The
28
+ [shared board guide](https://github.com/mo0rti/prism/blob/main/docs/shared-board.md) has the details, and
29
+ [current status](https://github.com/mo0rti/prism/blob/main/docs/current-status.md) records what is verified and what is open.
30
+
31
+ ## Quickstart: a shared board for you and your agents
32
+
33
+ Prism runs on one computer. One local service per workspace serves the browser board and an MCP endpoint, so you and your coding agents work on the same wiki. Prism needs Python 3.10 or later; [uv](https://docs.astral.sh/uv/) installs one when none is present. Install it from PyPI as `prism-kit`, which provides the `prism` command:
34
+
35
+ ```bash
36
+ uv tool install prism-kit
37
+ prism --version
38
+ ```
39
+
40
+ `pipx install prism-kit` and `pip install prism-kit` work as well. To run Prism without installing Python tooling, use the npm launcher: `npx @mortitech/prism <command>` runs the same release through uv, which it downloads once after checking its SHA-256 when uv is not already installed. The rest of this page writes `prism <command>`.
41
+
42
+ **From source (contributors).** Clone the repository and install it in editable mode:
43
+
44
+ ```bash
45
+ git clone https://github.com/mo0rti/prism.git
46
+ cd prism
47
+ pip install -e .
48
+ ```
49
+
50
+ Run the remaining steps in a separate workspace folder, not in this maintainer checkout and not in a cloud-synced folder such as OneDrive.
51
+
52
+ **1. Add the workflow.** Use an empty folder or an existing repository. Choose a display name and one scope; `--platform` takes one of the five platform IDs and does not generate an application. The first command previews every file. The second asks you to confirm before it writes (`--apply --yes` skips the question for automation).
53
+
54
+ ```bash
55
+ cd path/to/your-workspace
56
+ prism workflow install . --name "My workspace" --platform backend
57
+ prism workflow install . --name "My workspace" --platform backend --apply
58
+ ```
59
+
60
+ **2. Check readiness.** The "Shared board" section lists what needs attention, each with a `Fix:` line. A warning that no grant exists yet is expected at this point.
61
+
62
+ ```bash
63
+ prism doctor --workspace .
64
+ ```
65
+
66
+ **3. Register a person and an agent.** Each command prints JSON whose `token` appears once. Keep tokens private and out of files and prompts. A grant without `--write` is read-only.
67
+
68
+ ```bash
69
+ prism board grant "Product owner" --kind human --write --path .
70
+ prism board grant "Coding agent" --kind agent --write --path .
71
+ ```
72
+
73
+ Put the agent's token in an environment variable before you start the agent host:
74
+
75
+ ```bash
76
+ export PRISM_BOARD_TOKEN="<the agent's token>" # macOS, Linux, Git Bash
77
+ $env:PRISM_BOARD_TOKEN = "<the agent's token>" # PowerShell
78
+ ```
79
+
80
+ **4. Start the board.**
81
+
82
+ ```bash
83
+ prism board serve . --port 8765
84
+ ```
85
+
86
+ It prints the board URL, the MCP endpoint (`http://127.0.0.1:8765/mcp`) and a hint for issuing another grant, then opens your browser (`--no-open` skips that). Sign in with the human token. Press Ctrl+C to stop. The service listens on loopback only.
87
+
88
+ **5. Connect Claude Code and Codex.** Both use their standard Streamable HTTP MCP configuration with that endpoint and `PRISM_BOARD_TOKEN`. The exact entries are in [Connect an agent host](https://github.com/mo0rti/prism/blob/main/docs/shared-board.md#connect-an-agent-host). Give each host its own grant, and start the host from a shell where the variable is set. [Agent hosts](https://github.com/mo0rti/prism/blob/main/docs/agent-hosts.md) lists the tested versions, settings and known limitations.
89
+
90
+ **6. Run a first journey.**
91
+
92
+ 1. Ask the agent to run Prism's `setup-project` skill. Setup is an interview that writes the product context directly into the workspace, so it does not go through the board.
93
+ 2. Create a folder such as `knowledge/intake/pending/my-first-feature/` and put your brief in it as a Markdown file, using `knowledge/intake/pending/PO_BRIEF_TEMPLATE.md` as a guide. Then ask the agent: "Use Prism's PO intake skill to refine the pending brief." The agent shows the exact file changes, you confirm them in the agent, and it applies them. A new feature appears on the board.
94
+ 3. In the board, move the feature with `po-handoff` (drag its card or use its action control). Review the evidence and exact changes, acknowledge them and confirm. The board offers the same human action for `design-start` and `dev-start`. The remaining steps run through the agent's skills.
95
+
96
+ If a step fails, [docs/troubleshooting.md](https://github.com/mo0rti/prism/blob/main/docs/troubleshooting.md) lists the symptom, cause and fix for the common cases. The [shared board guide](https://github.com/mo0rti/prism/blob/main/docs/shared-board.md) covers every command, the MCP tools and recovery of interrupted operations, and [SECURITY.md](https://github.com/mo0rti/prism/blob/main/SECURITY.md) describes what the local service protects.
97
+
98
+ ![Prism wiki visualization Graph view](https://raw.githubusercontent.com/mo0rti/prism/main/docs/media/wiki-dashboard-graph.png)
99
+
100
+ _Graph view from the synthetic local TreasuryFlow fixture._
101
+
102
+ To explore a populated example first, follow the [local wiki visualization guide](https://github.com/mo0rti/prism/blob/main/docs/wiki-visualization.md). It builds a synthetic TreasuryFlow fixture that is safe to regenerate.
103
+
104
+ ## Optional: generate an application
105
+
106
+ Application generation is separate from the shared board. Run `prism` for the home screen, or `prism new` for the guided flow.
107
+
108
+ A Prism-generated repository can include:
109
+
110
+ - **Backend**: Spring Boot 4, Kotlin 2.2+, Java 21
111
+ - **User Web App**: Next.js + TypeScript
112
+ - **Admin Web Portal**: Next.js + TypeScript
113
+ - **Android**: Kotlin + Jetpack Compose
114
+ - **iOS**: Swift + SwiftUI
115
+
116
+ Every generated repository also includes:
117
+
118
+ - a living product wiki under `knowledge/wiki/`
119
+ - generated AI context for Claude, Codex, and Cursor
120
+ - lifecycle commands for PO, design, dev, and advisory review
121
+ - project docs, generators, and workflow wiring
122
+
123
+ ![Prism home screen](https://raw.githubusercontent.com/mo0rti/prism/main/docs/media/prism-menu.png)
124
+
125
+ From the Prism home screen:
126
+
127
+ - choose `Doctor` to check prerequisites
128
+ - choose `New Project` to generate a sample repo
129
+ - choose `Browse Presets` if you want to browse the recommended starting paths first
130
+
131
+ ![Prism guided project creation](https://raw.githubusercontent.com/mo0rti/prism/main/docs/media/prism-new-project.png)
132
+
133
+ After generating a project:
134
+
135
+ 1. open the generated repository
136
+ 2. inspect `README.md`, `CONTEXT.md`, and `knowledge/wiki/SCHEMA.md`
137
+ 3. initialize the workflow with:
138
+ - Claude Code: `/setup-project`
139
+ - Codex: `$setup-project`
140
+ - Cursor: ask the agent to run `setup-project`
141
+ 4. to enable the shared board and MCP writes, preview `prism workflow upgrade .`,
142
+ then confirm with `prism workflow upgrade . --apply` and register participants
143
+ as in the quickstart above.
144
+
145
+ For the full first-run path, read [docs/getting-started.md](https://github.com/mo0rti/prism/blob/main/docs/getting-started.md).
146
+
147
+ ## Start Here By Goal
148
+
149
+ ### I want a board for humans and coding agents
150
+
151
+ Read the [shared board guide](https://github.com/mo0rti/prism/blob/main/docs/shared-board.md), then the
152
+ [wiki workflow](https://github.com/mo0rti/prism/blob/main/docs/wiki-workflow.md). The local service shares one workspace
153
+ between the browser and standard MCP clients.
154
+
155
+ ### I want to generate a project and evaluate Prism
156
+
157
+ Read these first:
158
+
159
+ 1. [docs/getting-started.md](https://github.com/mo0rti/prism/blob/main/docs/getting-started.md)
160
+ 2. [docs/questionnaire.md](https://github.com/mo0rti/prism/blob/main/docs/questionnaire.md)
161
+ 3. [docs/generated-projects.md](https://github.com/mo0rti/prism/blob/main/docs/generated-projects.md)
162
+
163
+ ### I already have a generated Prism project
164
+
165
+ Read these first:
166
+
167
+ 1. `README.md` inside the generated repository
168
+ 2. `CONTEXT.md` inside the generated repository
169
+ 3. [docs/generated-projects.md](https://github.com/mo0rti/prism/blob/main/docs/generated-projects.md)
170
+ 4. [docs/wiki-workflow.md](https://github.com/mo0rti/prism/blob/main/docs/wiki-workflow.md)
171
+
172
+ ### I want to understand the Prism operating model
173
+
174
+ Read these in order:
175
+
176
+ 1. [docs/prism-model.md](https://github.com/mo0rti/prism/blob/main/docs/prism-model.md)
177
+ 2. [docs/wiki-workflow.md](https://github.com/mo0rti/prism/blob/main/docs/wiki-workflow.md)
178
+ 3. [docs/ai-surfaces.md](https://github.com/mo0rti/prism/blob/main/docs/ai-surfaces.md)
179
+
180
+ ### I want to maintain or improve Prism itself
181
+
182
+ Start with:
183
+
184
+ 1. [docs/maintainer-workflow.md](https://github.com/mo0rti/prism/blob/main/docs/maintainer-workflow.md)
185
+ 2. [docs/current-status.md](https://github.com/mo0rti/prism/blob/main/docs/current-status.md)
186
+ 3. [docs/README.md](https://github.com/mo0rti/prism/blob/main/docs/README.md)
187
+
188
+ ## Current Status
189
+
190
+ - The workflow, the shared board, the MCP tool contract and the human board actions are implemented and tested; the [plan](https://github.com/mo0rti/prism/blob/main/docs/prism-core-workflow-plan.md) states their scope and contracts.
191
+ - Application samples: backend, Android and web are verified locally, and the iOS sample is verified only by the macOS CI job, which has not run yet. Live Cloudflare and Azure deployments are unverified, and Apple Sign-In is experimental.
192
+ - Core acceptance uses disposable neutral workspaces. Sample behavior does not define the core workflow.
193
+ - Prism is released under the MIT license and published to PyPI as `prism-kit`, with the `@mortitech/prism` launcher on npm. The [changelog](https://github.com/mo0rti/prism/blob/main/CHANGELOG.md) lists what each version contains.
194
+
195
+ For the detailed status, read [docs/current-status.md](https://github.com/mo0rti/prism/blob/main/docs/current-status.md).
196
+
197
+ ## Learn More
198
+
199
+ For the full documentation index, read [docs/README.md](https://github.com/mo0rti/prism/blob/main/docs/README.md).
200
+
201
+ ## Related Repo Files
202
+
203
+ - [AGENTS.md](https://github.com/mo0rti/prism/blob/main/AGENTS.md) for Codex maintainer guidance in this repo
204
+ - [CLAUDE.md](https://github.com/mo0rti/prism/blob/main/CLAUDE.md) for Claude maintainer guidance in this repo
205
+
206
+ ## License
207
+
208
+ Prism is released under the [MIT license](https://github.com/mo0rti/prism/blob/main/LICENSE), copyright 2026 Mortitech. The vendored force-graph library keeps its own MIT license; see [third-party notices](https://github.com/mo0rti/prism/blob/main/THIRD_PARTY_NOTICES.md).
@@ -0,0 +1,11 @@
1
+ # Third-party notices
2
+
3
+ The dashboard bundles [force-graph 1.47.2](https://github.com/vasturiano/force-graph/tree/v1.47.2),
4
+ copyright 2018 Vasco Asturiano, under the MIT license.
5
+
6
+ Its [upstream license](https://github.com/vasturiano/force-graph/blob/v1.47.2/LICENSE)
7
+ is retained in [force-graph.LICENSE.txt](prism_cli/assets/force-graph.LICENSE.txt),
8
+ included in the Python package, and embedded in generated dashboard HTML.
9
+
10
+ This notice describes the vendored asset's license. Prism's own license is the
11
+ MIT license in [LICENSE](LICENSE), copyright 2026 Mortitech.
@@ -0,0 +1,5 @@
1
+ """Prism CLI package."""
2
+
3
+ __all__ = ["__version__"]
4
+
5
+ __version__ = "0.3.0"
@@ -0,0 +1,5 @@
1
+ from prism_cli.cli import main
2
+
3
+
4
+ if __name__ == "__main__":
5
+ raise SystemExit(main())
@@ -0,0 +1,10 @@
1
+ # Vendored assets
2
+
3
+ ## force-graph.min.js
4
+
5
+ - Project: https://github.com/vasturiano/force-graph
6
+ - Version: 1.47.2 (UMD dist build, unmodified)
7
+ - License: MIT (c) Vasco Asturiano
8
+ - Fetched: 2026-06-12 from https://cdn.jsdelivr.net/npm/force-graph@1.47.2/dist/force-graph.min.js
9
+ - Update procedure: replace the file with a newer pinned dist build, update this
10
+ record, and re-run the dashboard export tests.
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2018 Vasco Asturiano
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.