o9k-context

Load specific context from hmem based on what is needed RIGHT NOW. Use when load_project output is not enough for the current question.

10 stars

Best use case

o9k-context is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Load specific context from hmem based on what is needed RIGHT NOW. Use when load_project output is not enough for the current question.

Teams using o9k-context should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/o9k-context/SKILL.md --create-dirs "https://raw.githubusercontent.com/Bumblebiber/hmem/main/skills/o9k-context/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/o9k-context/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How o9k-context Compares

Feature / Agento9k-contextStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Load specific context from hmem based on what is needed RIGHT NOW. Use when load_project output is not enough for the current question.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# o9k-context

## TRIGGER
Use when:
- The current question requires a past decision not in the project brief
- You need to recall a specific bug, pattern, or lesson
- You need code details not in the Overview

Do NOT use for session start — use o9k-session-start instead.

## STEP 1: Identify what type of information is needed

Pick ONE:
- Past decision → use search_memory with keywords from that decision
- Lesson or pattern → use find_related on the concept
- Code details → use read_memory on P00XX.2 (Codebase section)

## STEP 2: Run the search (pick ONE)

For keyword search:
search_memory(query: "<specific keywords>")

For semantic search:
find_related(id: "P00XX", query: "<concept>")

For direct node:
read_memory(id: "P00XX.2")

Replace P00XX with the active project ID (e.g., P0056).

## STEP 3: Filter results

Select at most 3 nodes that directly answer the question.
- Prefer L-Entries over O-Entries (more compact, already distilled)
- Prefer entries with matching keywords in title
- Discard everything else

## STEP 4: Output

[CONTEXT LOADED]
<title of node 1>: <body of node 1>
---
<title of node 2>: <body of node 2>
[/CONTEXT LOADED]

If nothing relevant found:

[CONTEXT LOADED]
No relevant context found for: <your query>
[/CONTEXT LOADED]

→ If the missing info is code structure: dispatch an Explore agent to locate it in the filesystem.
→ After finding it, update the Codebase node immediately using the correct depth:
  L3 — module group (if the group is missing):
    append_memory(id="P00XX.2", title="Core modules")
  L4 — individual module with signature + purpose:
    append_memory(id="P00XX.2.N", title="moduleName.ts", body="functionName(param: Type): Return — purpose. src/path/moduleName.ts")
  L5 — optional extended notes (edge cases, caveats):
    append_memory(id="P00XX.2.N.M", title="Note", body="...")

Related Skills

We are still matching the closest adjacent skills for this page. In the meantime, continue through the full directory.