TELOS
TELOS (Telic Evolution and Life Operating System) — Reads, updates, and backs up the user's personal life OS stored in ~/clawd/telos/. Provides missions, goa...
Like a lobster shell, security has layers — review code before you run it.
License
SKILL.md
TELOS — Telic Evolution and Life Operating System
User's personal life OS. 20-file system capturing who they are across missions, goals, beliefs, challenges, and wisdom. Read at session start. Updated through guided workflows.
Data Location
- User data:
$OPENCLAW_WORKSPACE/telos/(defaults to~/openclaw/telos/, never committed to git) - Templates:
assets/templates/in this skill (20 files) - References:
references/onboarding.md,references/update-workflow.md
Context Loading
Two modes depending on setup:
- With hook (
hooks/telos-context.jsinstalled): MISSION.md + GOALS.md + BELIEFS.md are automatically pre-loaded at session start viaagent:bootstrap. Additional files are injected on-demand when relevant topics are detected in your messages. This grants the hook persistent, automatic behavior — only install if you want this. - Without hook (default): Files are loaded on-demand only — the AI reads SKILL.md instructions and loads the relevant files based on the context. Nothing is auto-injected.
⚠️ Persistence note: Installing the hook enables automatic context injection at every session start. This is intentional behavior — opt in only if you want TELOS context always available.
File Index
Use this index to decide which files to read. Each file captures a different dimension of the user's life context:
| File | Contains | Load when the conversation touches... |
|---|---|---|
| MISSION.md | M# — ultimate life purposes | direction, meaning, "why am I doing this", major decisions |
| GOALS.md | G# — specific objectives with timelines | planning, priorities, "should I do X", progress, deadlines |
| BELIEFS.md | B# — core convictions guiding decisions | values, principles, "what do you think about", worldview |
| CHALLENGES.md | C# — current obstacles | frustration, being stuck, blockers, "I can't seem to" |
| STRATEGIES.md | S# — approaches to challenges/goals | how to tackle something, methodology, "what's my plan for" |
| PROBLEMS.md | P# — problems in the world to solve | entrepreneurship, impact, "what problem should I work on" |
| PROJECTS.md | Active initiatives | work, side projects, "what am I working on" |
| NARRATIVES.md | N# — talking points, self-story | pitching, introducing yourself, "how do I explain what I do" |
| FRAMES.md | FR# — mental perspectives | reframing, alternative viewpoints, "how should I think about" |
| MODELS.md | MO# — how things work | decision-making, analysis, cause-and-effect reasoning |
| PREDICTIONS.md | Future bets with confidence levels | forecasting, trends, "what do you think will happen" |
| WISDOM.md | Accumulated principles and quotes | advice, life lessons, "what's your take on" |
| LEARNED.md | Specific lessons from experience | reflecting, "what have I learned about", mistakes made |
| WRONG.md | Things the user was wrong about | intellectual humility, updating beliefs, "I changed my mind" |
| BOOKS.md | Influential books | reading, recommendations, "what should I read" |
| MOVIES.md | Influential films | media, culture, recommendations |
| TRAUMAS.md | TR# — formative experiences | deep personal context, patterns, "why do I always" |
| IDEAS.md | I# — ideas worth capturing | brainstorming, "I just thought of", creative exploration |
| STATUS.md | Current life snapshot | "where am I right now", life audit, quarterly review |
| TELOS.md | Master overview with all sections | "show me my telos", full context needed, onboarding |
Loading Rules
- Check if
~/clawd/telos/exists. If not, skip silently. - Read the user's message. Identify which life dimensions it touches (use the "Load when" column).
- Read only those files. Usually 1-3 files, rarely more than 4.
- Absorb silently — use the context to inform your response without announcing it.
- If a file is empty (only template content), skip it.
- For major life decisions, load the core trio: MISSION.md + GOALS.md + BELIEFS.md.
- If no telos directory exists and the user asks about personal topics, suggest "setup telos."
The goal: every response to a personal question should be informed by the user's own stated values, not generic advice. But unrelated conversations (coding, factual questions, etc.) should not trigger any telos loading.
Trigger → Action Map
| Trigger | Action |
|---|---|
| "setup telos" / "telos onboarding" / "引导我填" | Run bun {baseDir}/scripts/init-telos.ts then see references/onboarding.md |
| "update telos" / "add to telos" | Run update script (see below) — respond conversationally, not mechanically |
| "add book [title]" | Acknowledge the book, reflect on the insight, then append to BOOKS.md |
| "learned [X]" / "add to learned" | Engage with the lesson first, then append to LEARNED.md |
| "add to wisdom" | Discuss the principle, then append to WISDOM.md |
| "telos status" | Read + summarize STATUS.md |
| "my goals / beliefs / missions" | Read relevant file, respond in context |
| "I was wrong about [X]" | Append to WRONG.md with date + lesson |
| "backup telos" | Run bun {baseDir}/scripts/backup-telos.ts backup |
| "restore telos" / "restore telos from [name]" | Run bun {baseDir}/scripts/backup-telos.ts restore <name> |
| "list telos backups" / "telos snapshots" | Run bun {baseDir}/scripts/backup-telos.ts list |
| "telos history [file]" / "show beliefs history" | Run bun {baseDir}/scripts/backup-telos.ts history <file> |
| "restore beliefs from [version]" | Run bun {baseDir}/scripts/backup-telos.ts restore-file <file> <ver> |
Personal Analysis Context
When user asks about personal decisions, investments, career, relationships, life priorities, or strategy — always check telos first:
- If telos files exist → read relevant sections before responding
- Frame advice against their Goals (G#) and Beliefs (B#)
- Flag if a suggested action conflicts with their stated Missions (M#)
- Reference their Challenges (C#) and Strategies (S#) when relevant
Example: user asks "should I take this opportunity?" → read M#, G#, B# → advise through that lens.
Numbering System
M# Missions · G# Goals · C# Challenges · S# Strategies · B# Beliefs · FR# Frames · MO# Models · N# Narratives · P# Problems · TR# Traumas · I# Ideas
Hierarchy: M → G ← (blocked by) C ← (solved by) S | B guides all | P drives G
Update Workflow
When updating telos, the conversation matters as much as the data. Follow this order:
- Engage first — Acknowledge what the user shared. Reflect on the insight, ask a follow-up, or connect it to their existing telos context. This is a life framework, not a database — treat additions as meaningful moments.
- Execute — Run the update script:
bun {baseDir}/scripts/update-telos.ts <file> "<content>" "<description>" - Confirm briefly — Mention it's backed up and logged. Don't dump execution logs.
- Suggest connections — After adding to one file, suggest related files that might benefit. ("This connects to your B0 about compounding — want to add a related strategy?")
Full format rules: references/update-workflow.md
The tone should feel like a thoughtful conversation partner recording insights together, not a CLI tool reporting status.
OpenClaw Hook Integration
For deeper integration, the skill includes a hook that automatically injects TELOS context into conversations:
What it does:
- Session start (
agent:bootstrap): Loads MISSION.md + GOALS.md + BELIEFS.md so the AI knows your core context from the first message - Every message (
message:preprocessed): Detects personal topics (career, decisions, investments, etc.) and injects only the relevant TELOS files before the AI responds
Install the hook (optional — enables automatic injection):
⚠️ Opt-in only: The hook injects your personal TELOS content (missions, goals, beliefs) into the system prompt at every session start and on relevant messages. This is persistent automatic behavior — only install if you explicitly want TELOS context always pre-loaded.
cp {baseDir}/hooks/telos-context.js ~/.openclaw/hooks/
How it works:
- User asks about career → hook detects "career" keywords → injects MISSION + GOALS + BELIEFS + STRATEGIES
- User asks to add a book → hook detects "book" → injects BOOKS.md
- User asks a coding question → no personal keywords detected → nothing injected (zero overhead)
- Empty template files are automatically skipped (won't inject placeholder content)
Without the hook: The skill still works — the AI reads the SKILL.md instructions and loads TELOS files based on the File Index table above. The hook just makes it automatic and faster.
With the hook: Context is pre-injected before the AI even sees the message, so responses are personalized from the first token.
Files
31 totalComments
Loading comments…
