Domain Extension · PersonalOntologyPersonal Ontology
Your career history, CFP pipeline, opportunities, and content lifecycle become first-class queryable graph artifacts. Skill tiers, talk stages, publication records, and positioning strategies are modeled as ontology nodes — version-controlled, machine-queryable, and surfaced in the daemon UI.
# Activate the personal domain in your repo
ontoref setup --kind PersonalOntology
# Alias is now available
personal state
Career Layer
Skills are stored as ontology nodes with a tier classification. Talks, publications, and positioning strategies extend the career graph. All of this lives in ontology/career.ncl — queryable via the CLI or the daemon API.
Skills
- Four tiers: Expert · Advanced · Intermediate · Foundational
- Filter by tier to generate positioning materials or résumé sections
- Skills link to talks and publications via ontology edges
ExpertAdvancedIntermediateFoundational
personal career skills
personal career skills --tier Expert
Talks
- Full lifecycle: Idea → Proposed → Accepted → Delivered → Archived
- Each talk carries title, abstract, event, date, recording URL, slides URL
- Filter by status to see the active pipeline vs. archive
personal career talks
personal career talks --status Accepted
Publications & Positioning
- Publications sorted by order field — articles, books, papers
- Positioning strategies: core message, target audience, differentiators
- Both feed into the /career daemon page and CV generation modes
personal career publications
personal career positioning
CFP Pipeline
Call-for-proposals tracked as graph nodes with a typed stage FSM. Each CFP record carries the event, deadline, talk abstract, submission URL, and Sessionize ID. Stage transitions are written back to reflection/backlog.ncl so they survive as version-controlled history.
Watching→Evaluating→Drafting→Submitted→Accepted/Declined→Delivered
| Command | What it does |
|---|
| personal cfp | List all CFP records, most recent first |
| personal cfp --stage Drafting | Filter to records currently in the Drafting stage |
| personal cfp show <id> | Full detail for one CFP: event, abstract, deadline, URLs, history |
| personal cfp update <id> --stage Accepted | Transition the CFP stage; writes transition to reflection/backlog.ncl |
# See all CFPs waiting for a decision
personal cfp --stage Submitted
# Inspect a specific CFP before updating
personal cfp show cfp-rustconf-2025
# Mark it as accepted — stage written to backlog.ncl
personal cfp update cfp-rustconf-2025 --stage Accepted
# ore alias works identically
ore personal cfp --stage Drafting
Opportunities
Job opportunities, consulting engagements, and collaboration requests tracked as typed nodes. Each record carries a company, role, contact, compensation range, and notes. Stage transitions are explicit — no hidden pipeline state.
Watching→Evaluating→Active→Submitted→Closed
# List opportunities currently under active evaluation
personal opportunities --status Evaluating
# Full detail — compensation range, contact, notes, history
personal opportunities show opp-acme-sre-2025
# Move to Active (started interviewing)
personal opportunities update opp-acme-sre-2025 --status Active
Content Pipeline
Blog posts, technical articles, video scripts, and newsletter issues tracked as content nodes in ontology/personal.ncl. Each node carries a title, format, target platform, tags, and a publication URL. Status drives the pipeline view in the daemon UI.
Idea→Draft→Review→Published→Archived
# View everything currently in draft
personal content --status Draft
# View what's pending review before publish
personal content --status Review
# All statuses (no filter)
personal content
Daemon UI
The personal domain activates two additional pages in the daemon UI. Both are live-reloading and reflect the current state of your ontology files without restart.
/career
Skills
Experience
Talks
Publications
Positioning
/careerSkillsSkill matrix grouped by tier — Expert down to Foundational
/career#experienceExperienceWork history with dates, roles, and linked skill nodes
/career#talksTalksPipeline view — accepted, delivered, and archived talks
/personal
/personalContentContent pipeline — Idea through Published, filtered by status
/personal#opportunitiesOpportunitiesActive opportunity pipeline with stage and notes
/personal#cfpCFPCFP board — grouped by stage, deadline-sorted
Activation & CLI Reference
Setup writes repo_kind = PersonalOntology to your manifest and installs ontology/career.ncl and ontology/personal.ncl extension schemas. The personal alias is registered in your shell profile (or invokable as ore personal).
# ── Activation ──────────────────────────────────────────
ontoref setup --kind PersonalOntology
# ── FSM state ────────────────────────────────────────────
personal state # FSM position across all dimensions
personal next # next valid transitions + blockers/catalysts
personal validate <decision> # check against ontological invariants
personal audit # full coherence audit
# ── Career ───────────────────────────────────────────────
personal career skills [--tier Expert|Advanced|Intermediate|Foundational]
personal career talks [--status Idea|Proposed|Accepted|Delivered|Archived]
personal career publications
personal career positioning
# ── CFP pipeline ─────────────────────────────────────────
personal cfp [--stage Watching|Evaluating|Drafting|Submitted|Accepted|Declined|Delivered]
personal cfp show <id>
personal cfp update <id> --stage <stage>
# ── Opportunities ────────────────────────────────────────
personal opportunities [--status Watching|Evaluating|Active|Submitted|Closed]
personal opportunities show <id>
personal opportunities update <id>
# ── Content ──────────────────────────────────────────────
personal content [--status Idea|Draft|Review|Published|Archived]
# All of the above also work via the ore alias:
ore personal cfp --stage Drafting