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.
- prism_kit-0.3.0/LICENSE +21 -0
- prism_kit-0.3.0/MANIFEST.in +6 -0
- prism_kit-0.3.0/PKG-INFO +232 -0
- prism_kit-0.3.0/README.md +208 -0
- prism_kit-0.3.0/THIRD_PARTY_NOTICES.md +11 -0
- prism_kit-0.3.0/prism_cli/__init__.py +5 -0
- prism_kit-0.3.0/prism_cli/__main__.py +5 -0
- prism_kit-0.3.0/prism_cli/assets/VENDOR.md +10 -0
- prism_kit-0.3.0/prism_cli/assets/force-graph.LICENSE.txt +21 -0
- prism_kit-0.3.0/prism_cli/assets/force-graph.min.js +5 -0
- prism_kit-0.3.0/prism_cli/assets/graph_template.html +3633 -0
- prism_kit-0.3.0/prism_cli/assets/workflow-v1.json +837 -0
- prism_kit-0.3.0/prism_cli/board_cli.py +175 -0
- prism_kit-0.3.0/prism_cli/board_mcp.py +360 -0
- prism_kit-0.3.0/prism_cli/board_reads.py +737 -0
- prism_kit-0.3.0/prism_cli/board_server.py +1099 -0
- prism_kit-0.3.0/prism_cli/board_service.py +4593 -0
- prism_kit-0.3.0/prism_cli/board_store.py +411 -0
- prism_kit-0.3.0/prism_cli/cli.py +2374 -0
- prism_kit-0.3.0/prism_cli/fs_safety.py +72 -0
- prism_kit-0.3.0/prism_cli/graph_server.py +183 -0
- prism_kit-0.3.0/prism_cli/manifest_update.py +254 -0
- prism_kit-0.3.0/prism_cli/presets.py +87 -0
- prism_kit-0.3.0/prism_cli/render.py +418 -0
- prism_kit-0.3.0/prism_cli/schemas/envelope-v1.json +86 -0
- prism_kit-0.3.0/prism_cli/schemas/status-v1.json +86 -0
- prism_kit-0.3.0/prism_cli/schemas/wiki-graph-v1.json +346 -0
- prism_kit-0.3.0/prism_cli/schemas/wiki-lint-v1.json +96 -0
- prism_kit-0.3.0/prism_cli/schemas/wiki-query-v1.json +94 -0
- prism_kit-0.3.0/prism_cli/schemas/wiki-transition-preflight-v1.json +264 -0
- prism_kit-0.3.0/prism_cli/status.py +697 -0
- prism_kit-0.3.0/prism_cli/ui.py +595 -0
- prism_kit-0.3.0/prism_cli/wiki_graph.py +573 -0
- prism_kit-0.3.0/prism_cli/wiki_graph_html.py +45 -0
- prism_kit-0.3.0/prism_cli/wiki_links.py +57 -0
- prism_kit-0.3.0/prism_cli/wiki_lint.py +1306 -0
- prism_kit-0.3.0/prism_cli/wiki_model.py +914 -0
- prism_kit-0.3.0/prism_cli/wiki_query.py +340 -0
- prism_kit-0.3.0/prism_cli/wiki_transitions.py +2315 -0
- prism_kit-0.3.0/prism_cli/workflow_assets.py +224 -0
- prism_kit-0.3.0/prism_cli/workflow_install.py +950 -0
- prism_kit-0.3.0/prism_cli/workspace.py +762 -0
- prism_kit-0.3.0/prism_kit.egg-info/PKG-INFO +232 -0
- prism_kit-0.3.0/prism_kit.egg-info/SOURCES.txt +48 -0
- prism_kit-0.3.0/prism_kit.egg-info/dependency_links.txt +1 -0
- prism_kit-0.3.0/prism_kit.egg-info/entry_points.txt +2 -0
- prism_kit-0.3.0/prism_kit.egg-info/requires.txt +9 -0
- prism_kit-0.3.0/prism_kit.egg-info/top_level.txt +1 -0
- prism_kit-0.3.0/pyproject.toml +39 -0
- prism_kit-0.3.0/setup.cfg +4 -0
prism_kit-0.3.0/LICENSE
ADDED
|
@@ -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
|
prism_kit-0.3.0/PKG-INFO
ADDED
|
@@ -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
|
+

|
|
28
|
+

|
|
29
|
+

|
|
30
|
+

|
|
31
|
+

|
|
32
|
+

|
|
33
|
+
|
|
34
|
+

|
|
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
|
+

|
|
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
|
+

|
|
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
|
+

|
|
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
|
+

|
|
4
|
+

|
|
5
|
+

|
|
6
|
+

|
|
7
|
+

|
|
8
|
+

|
|
9
|
+
|
|
10
|
+

|
|
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
|
+

|
|
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
|
+

|
|
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
|
+

|
|
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,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.
|