jarvOS — Personal AI Operating System
When to Use
- When managing projects, tasks, or plans
- When the user asks about goals, priorities, or ontology context
- When making decisions about what to work on next
- When escalating blockers or decisions to the user
- When creating new projects, boards, briefs, or plans
- When doing reflection or ontology checks
Core Concepts
Project Management System (PMS)
Projects live in a hierarchy: Portfolios → Programs → Project Boards → Tasks.
Every active project has three companions:
- Project Board — milestones, status, recent work log
- Project Brief — scope, goals, success criteria (the "contract")
- Plan — execution phases with four sections:
- Decisions Confirmed — no re-litigating
- Execution Phases — ordered steps with verification
- Autonomous Now — work you can do without asking
- Needs You — decisions only the user can make
Key rule: Every task must link to a Project Board. No board = ungoverned.
Ontology Context
The hierarchy-of-meaning map: Purpose → Beliefs → Mission → Values → Goals → Projects.
Use it for:
- Goal tracing — every project should trace to a Goal
- Orphan detection — flag projects/goals not connected to anything
- Meaning checks — compare recent work against Mission and Values
- Prioritization — Mission > Values > Goals > Projects
Hermes should load ontology through jarvos_hydrate or the shared
@jarvos/ontology provider when available. Do not directly mutate ontology
source files or rewrite ONTOLOGY.md; secondbrain evidence can only create
source-backed ontology candidates or inquiry items for review.
Governance
- Escalation ladder for decisions: Blocked / Why now / Options / Recommended / Default
- Approval gates: external sends, spending, deletion, config changes require explicit approval
- Autonomy levels: L0 Observe → L1 Draft → L2 Auto-execute → L3 Approval required
Procedure
When creating a new project:
- Create a Project Board with milestones
- Create a Project Brief with scope and success criteria
- Link to the relevant Portfolio and Program
- Create a Plan if the work is non-trivial
When the user asks "what should I work on?":
- Check ONTOLOGY.md for active Goals
- Check Project Boards for "Autonomous Now" items
- Check Tasks for In Progress / highest priority items
- Surface any blockers from "Needs You" sections
When blocked on a decision:
Use the escalation ladder format:
**Blocked:** [what's stuck]
**Why now:** [why this matters today]
**Options:** A) ... B) ... C) ...
**Recommended:** [best option and why]
**Default if no response by [time]:** [what I'll do]
During reflection / ontology checks:
- Use
jarvos_hydrate or the ontology provider packet before falling back to ONTOLOGY.md
- Compare recent work against stated Goals
- Flag orphaned projects (no Goal link)
- Flag stale Goals (no active project)
- Check Predictions for review dates
- Surface any drift between stated values and actual time allocation
Secondbrain — Journal and Notes
jarvOS-secondbrain is the shared vault layer for journal and notes. It resolves
paths in this order:
- Canonical env vars:
JARVOS_JOURNAL_DIR / JARVOS_NOTES_DIR
- Legacy env aliases:
JOURNAL_DIR / VAULT_NOTES_DIR
~/.jarvos/config.json paths.journal / paths.notes
- Vault root from
JARVOS_VAULT_DIR or jarvos.config.json paths.vault,
with Journal / Notes appended
- Default
~/Documents/Vault v3/Journal and ~/Documents/Vault v3/Notes
If the user already uses OpenClaw with jarvOS, they have a secondbrain vault
configured. Hermes should use the same vault — not a separate one.
To confirm vault config (ask the user once, then remember):
- Vault root:
$JARVOS_VAULT_DIR or ~/Documents/Vault v3
- Journal dir:
$JARVOS_JOURNAL_DIR, $JOURNAL_DIR, or <vault>/Journal
- Notes dir:
$JARVOS_NOTES_DIR, $VAULT_NOTES_DIR, or <vault>/Notes
When the user asks you to write to their journal or notes:
- Confirm the vault paths above are set (or use defaults).
- For intentional captures such as
note:, make a note, idea:, or
save this, call the jarvOS universal capture entrypoint with source
hermes; do not raw-write Markdown.
- Verify note captures write under
Notes/, link exactly once from
Journal/YYYY-MM-DD.md, preserve source-backed provenance, and leave
QMD/search freshness as pending-refresh.
- If paths are unset and the default vault doesn't exist, ask the user to run:
node modules/jarvos-secondbrain/scripts/detect-vault.js --runtime=hermes
and follow the guidance it prints.
Pitfall: do NOT invent a new vault path or journal file
The whole point of shared-vault onboarding is that every runtime (OpenClaw, Hermes,
and any future runtime) uses one vault. If you're unsure, default to
~/Documents/Vault v3 and ask the user to confirm rather than creating a new path.
Do not create guessed daily journal files under Notes/; canonical journals
live at Journal/YYYY-MM-DD.md.
Pitfalls
- Don't create projects without Board + Brief — ungoverned work gets lost
- Don't re-litigate Decisions Confirmed unless new evidence appears
- Don't skip the "Needs You" section — decisions that aren't captured get dropped
- Don't auto-approve external sends — always use the approval gate
Verification
- Every active project has Board + Brief + Plan
- Every task links to a Board
- ONTOLOGY.md Goals have at least one active linked project
- Escalation items include all five fields
1---2name: jarvos3description: jarvOS personal AI operating system — project management, ontology context, governance, and behavioral rules for your assistant.4---56# jarvOS — Personal AI Operating System78## When to Use9- When managing projects, tasks, or plans10- When the user asks about goals, priorities, or ontology context11- When making decisions about what to work on next12- When escalating blockers or decisions to the user13- When creating new projects, boards, briefs, or plans14- When doing reflection or ontology checks1516## Core Concepts1718### Project Management System (PMS)19Projects live in a hierarchy: **Portfolios → Programs → Project Boards → Tasks.**2021Every active project has three companions:22- **Project Board** — milestones, status, recent work log23- **Project Brief** — scope, goals, success criteria (the "contract")24- **Plan** — execution phases with four sections:25 - *Decisions Confirmed* — no re-litigating26 - *Execution Phases* — ordered steps with verification27 - *Autonomous Now* — work you can do without asking28 - *Needs You* — decisions only the user can make2930**Key rule:** Every task must link to a Project Board. No board = ungoverned.3132### Ontology Context33The hierarchy-of-meaning map: Purpose → Beliefs → Mission → Values → Goals → Projects.3435Use it for:36- **Goal tracing** — every project should trace to a Goal37- **Orphan detection** — flag projects/goals not connected to anything38- **Meaning checks** — compare recent work against Mission and Values39- **Prioritization** — Mission > Values > Goals > Projects4041Hermes should load ontology through `jarvos_hydrate` or the shared42`@jarvos/ontology` provider when available. Do not directly mutate ontology43source files or rewrite `ONTOLOGY.md`; secondbrain evidence can only create44source-backed ontology candidates or inquiry items for review.4546### Governance47- **Escalation ladder** for decisions: Blocked / Why now / Options / Recommended / Default48- **Approval gates**: external sends, spending, deletion, config changes require explicit approval49- **Autonomy levels**: L0 Observe → L1 Draft → L2 Auto-execute → L3 Approval required5051## Procedure5253### When creating a new project:541. Create a Project Board with milestones552. Create a Project Brief with scope and success criteria563. Link to the relevant Portfolio and Program574. Create a Plan if the work is non-trivial5859### When the user asks "what should I work on?":601. Check ONTOLOGY.md for active Goals612. Check Project Boards for "Autonomous Now" items623. Check Tasks for In Progress / highest priority items634. Surface any blockers from "Needs You" sections6465### When blocked on a decision:66Use the escalation ladder format:67```68**Blocked:** [what's stuck]69**Why now:** [why this matters today]70**Options:** A) ... B) ... C) ...71**Recommended:** [best option and why]72**Default if no response by [time]:** [what I'll do]73```7475### During reflection / ontology checks:761. Use `jarvos_hydrate` or the ontology provider packet before falling back to `ONTOLOGY.md`772. Compare recent work against stated Goals783. Flag orphaned projects (no Goal link)794. Flag stale Goals (no active project)805. Check Predictions for review dates816. Surface any drift between stated values and actual time allocation8283## Secondbrain — Journal and Notes8485jarvOS-secondbrain is the shared vault layer for journal and notes. It resolves86paths in this order:871. Canonical env vars: `JARVOS_JOURNAL_DIR` / `JARVOS_NOTES_DIR`882. Legacy env aliases: `JOURNAL_DIR` / `VAULT_NOTES_DIR`893. `~/.jarvos/config.json` `paths.journal` / `paths.notes`904. Vault root from `JARVOS_VAULT_DIR` or `jarvos.config.json` `paths.vault`,91 with `Journal` / `Notes` appended925. Default `~/Documents/Vault v3/Journal` and `~/Documents/Vault v3/Notes`9394**If the user already uses OpenClaw with jarvOS**, they have a secondbrain vault95configured. Hermes should use the **same vault** — not a separate one.9697### To confirm vault config (ask the user once, then remember):98- Vault root: `$JARVOS_VAULT_DIR` or `~/Documents/Vault v3`99- Journal dir: `$JARVOS_JOURNAL_DIR`, `$JOURNAL_DIR`, or `<vault>/Journal`100- Notes dir: `$JARVOS_NOTES_DIR`, `$VAULT_NOTES_DIR`, or `<vault>/Notes`101102### When the user asks you to write to their journal or notes:1031. Confirm the vault paths above are set (or use defaults).1042. For intentional captures such as `note:`, `make a note`, `idea:`, or105 `save this`, call the jarvOS universal capture entrypoint with source106 `hermes`; do not raw-write Markdown.1073. Verify note captures write under `Notes/`, link exactly once from108 `Journal/YYYY-MM-DD.md`, preserve source-backed provenance, and leave109 QMD/search freshness as `pending-refresh`.1104. If paths are unset and the default vault doesn't exist, ask the user to run:111 `node modules/jarvos-secondbrain/scripts/detect-vault.js --runtime=hermes`112 and follow the guidance it prints.113114### Pitfall: do NOT invent a new vault path or journal file115The whole point of shared-vault onboarding is that every runtime (OpenClaw, Hermes,116and any future runtime) uses one vault. If you're unsure, default to117`~/Documents/Vault v3` and ask the user to confirm rather than creating a new path.118Do not create guessed daily journal files under `Notes/`; canonical journals119live at `Journal/YYYY-MM-DD.md`.120121## Pitfalls122- Don't create projects without Board + Brief — ungoverned work gets lost123- Don't re-litigate Decisions Confirmed unless new evidence appears124- Don't skip the "Needs You" section — decisions that aren't captured get dropped125- Don't auto-approve external sends — always use the approval gate126127## Verification128- Every active project has Board + Brief + Plan129- Every task links to a Board130- ONTOLOGY.md Goals have at least one active linked project131- Escalation items include all five fields