OST
Run a full Opportunity Solution Tree workflow from a single skill, backed by a lightweight graph database and CLI.
Entry Flow (Minimize File Loading)
Goal: Start a session, pick a workspace, and select or create an outcome.
-
Ensure DB exists
-
If .agr/ost.db is missing, initialize it:
-
uv run python scripts/ost.py init --path .agr/ost.db
-
Select workspace
-
List workspaces:
-
uv run python scripts/ost.py workspace list
-
If needed, create one:
-
uv run python scripts/ost.py workspace create "<name>"
-
Select outcome
-
List outcomes:
-
uv run python scripts/ost.py outcome list --workspace <name>
-
If needed, create one:
-
uv run python scripts/ost.py outcome add --workspace <name> "<title>"
-
Route to phase (load only the relevant file)
-
Outcomes: references/outcomes.md
-
Opportunities: references/opportunities.md
-
Solutions: references/solutions.md
-
Assumptions/Experiments: references/assumptions.md
Data Model + Storage
Use a lightweight graph DB at .agr/ost.db with multi-workspace support. The CLI manages nodes and edges; do not edit DB files manually.
CLI
Use the CLI to read/write the OST graph. The CLI is expected to live in this skill’s scripts/ directory and be run via uv run .
Commands (intended):
-
uv run python scripts/ost.py init --path .agr/ost.db
-
uv run python scripts/ost.py workspace list
-
uv run python scripts/ost.py workspace create "<name>"
-
uv run python scripts/ost.py outcome list --workspace <name>
-
uv run python scripts/ost.py outcome add --workspace <name> "<title>"
-
uv run python scripts/ost.py opportunity add --outcome <id> "<title>"
-
uv run python scripts/ost.py solution add --opportunity <id> "<title>"
-
uv run python scripts/ost.py assumption add --solution <id> "<title>"
-
uv run python scripts/ost.py show --outcome <id>
If the CLI is not yet implemented, document the intended command and proceed with non-destructive guidance only.
Output Format
OST Session
Selected Workspace
- Name: ...
Selected Outcome
- ID: ...
- Title: ...
Next Action
- [What the user wants to do next]
Next Step
- Load the relevant phase reference file
What NOT to Do
-
Do NOT edit .agr/ost.db directly.
-
Do NOT invent node IDs.
-
Do NOT run destructive commands without explicit user intent.