Przejdź do treści
Biblioteka skilli
Programowanie · Analiza

code-map

/code-map

Buduje mapę strukturalną kodu: grafy wywołań, indeks symboli i odwołania między plikami, na bazie Graphify.

Repozytorium
ren-os ↗
Licencja
MIT
Ostatnia zmiana repozytorium
05.09.2026

Ocena i bezpieczeństwo

90/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść25 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
2
Skrypty
1
Komentarze HTML
0
Adresy URL w SKILL.md
1
Przestarzałość

Brak sygnałów. Repozytorium zmienione 05.09.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co sprawdzić przed instalacją
  • 1 skrypt w paczce. Przejrzyj je przed instalacją, bo Claude może je uruchomić.

Skrypty: lib/__init__.py

Co robi i kiedy

Buduje mapę strukturalną kodu: grafy wywołań, indeks symboli i odwołania między plikami, na bazie Graphify.

Oryginalny opis (EN)

Use when the friend wants a structural map of a codebase (call graphs, symbol index, cross-file references) — beyond what wake-up/recall already surface from the wiki. Triggers on /ren:code-map [build|status]. A thin wrapper over Graphify (pinned 0.9.x), never a second hand-rolled engine; gracefully absent if Graphify isn't installed.

Jak działa

  1. When to use this skill
  2. When NOT to use this skill
  3. Behavior
  4. Boundaries (load-bearing)
Sekcje z nagłówków SKILL.md, w oryginale · 30 linii, 539 słów
Podgląd SKILL.md
---
name: code-map
description: |
  Use when the friend wants a structural map of a codebase (call graphs,
  symbol index, cross-file references) — beyond what wake-up/recall already
  surface from the wiki. Triggers on /ren:code-map [build|status]. A thin
  wrapper over Graphify (pinned 0.9.x), never a second hand-rolled engine;
  gracefully absent if Graphify isn't installed.
version: 0.8.8
license: MIT

framework_version: "0.8.8"
schema_version: 1
type: skill
execution_tier: deterministic

contract:
  required_outputs:
    - "status: a CodeMapStatus report (installed/version/pinned/stale), never a crash"
    - "build: graph.json under state_dir()/derived/codemap/, plus a codemap_tokens 'build' metric"
    - "consume (internal, called by other capabilities): tokens_loaded vs tokens_baseline metric"
  budgets:
    turns: 1
    files_written: 1
    duration_seconds: 120
  permissions:
    read:
      - "<repo being mapped>/**"
    write:
      - "~/.renos/wiki/.ren/derived/codemap/**"
      - "~/.renos/wiki/.ren/metrics/**"
    execute:
      - "graphify"
  completion_conditions:
    - "status() returns without raising regardless of whether graphify is installed"
    - "build() either returns a graph.json path or raises CodeMapUnavailable with an install pointer"
  output_paths:
    - "~/.renos/wiki/.ren/derived/codemap/"
    - "~/.renos/wiki/.ren/metrics/"

tags: [companion, code-map, graphify, derived-cache, instrumentation]
related_skills: []
references_required: []
references_on_demand: ["doctrine/companions.md"]
---

# code-map

A structural map of a codebase — symbols, call graphs, cross-file references — for sessions that need more than the wiki's own knowledge. This skill is a **thin wrapper over [Graphify](https://github.com/safishamsi/graphify) (pinned 0.9.x)**, not a second code-intelligence engine. Per the reuse doctrine (spec §3.2 v2.1 D-4), the framework's own hand-rolled `lib/codemap/` engine was deleted in favor of this wrapper.

## When to use this skill

- Friend invokes `/ren:code-map status` — report whether Graphify is installed, its version, whether that version is within the pinned range, and whether the derived graph exists and is fresh.
- Friend invokes `/ren:code-map build` — (re)generate the derived graph for the active repo.
- Another capability (not the friend directly) calls `importlib.import_module("skills.code-map.lib").consume()` to load the graph mid-session.

## When NOT to use this skill

- The friend wants wiki knowledge, not code structure → `/ren:recall`.
- Graphify is not installed and the friend hasn't asked to install it → report absence plainly via `status()`; do not suggest a fallback engine. There isn't one.

## Behavior

1. **status**: call `importlib.import_module("skills.code-map.lib").status(repo_root)`. Never raises — reports `installed=False` plainly when Graphify is absent, with a pointer to install it (`uv tool install graphifyy` — double y, not a typo; see `doctrine/companions.md`).
2. **build**: call `importlib.import_module("skills.code-map.lib").build(repo_root, session)`. Runs Graphify headlessly (`graphify <repo_root> --output <state_dir()/derived/codemap>`), records a `codemap_tokens` "build" metric (real byte size, not an estimate), and returns the `graph.json` path. Raises `CodeMapUnavailable` (with the install pointer) if the binary is missing, or if Graphify exits nonzero.
3. **consume** (internal use by other capabilities, not a direct user command): loads the graph and records BOTH `tokens_loaded` (the graph itself) and `tokens_baseline` (the raw source it summarizes) via `lib.instrument.estimator` — this is the chairman-ruling instrumentation: Graphify's token-savings claim must show up in these two numbers, not just be asserted. Raises `CodeMapUnavailable` if the graph is absent or stale (a source file changed since the last build) — it never rebuilds silently; the caller decides.

## Boundaries (load-bearing)

- **Derived cache, never memory.** The graph lives at `state_dir()/derived/codemap/graph.json` — entirely OUTSIDE the wiki page tree, the write-queue (Task 2.1), integrity checks (Task 2.3), and the backup-critical set (Phase 9). It is regenerable at any time from source; losing it loses nothing durable.
- **The pin (0.9.x) and why.** Graphify's API has churned across major versions; `GRAPHIFY_PIN = "0.9"` is the version prefix this wrapper is built against. `status()`'s `pinned_ok` flags drift for doctor (Phase 7) to surface — a version outside the pin is a warning, not a hard failure, but it's not silently ignored either.
- **Code-mode only, never Graphify's LLM media-extraction paths.** This wrapper only ever invokes Graphify's deterministic tree-sitter parsing. Graphify's own LLM-backed media-extraction features are never invoked from here, and stay off by default per the §3.6 data-flow statement.
- **Graphify's wiki/Obsidian export feature is FORBIDDEN here.** The wiki's SSOT stays queue-governed (Task 2.1) — nothing in this wrapper, ever, writes a wiki page. `build()` asserts its output path is under `state_dir()` in code, not just in this doc.
- **Graceful absence, no second engine.** Not installed → `status()` says so plainly and `build()`/`consume()` raise `CodeMapUnavailable` with an install pointer. There is no fallback hand-rolled engine to fall back to; that engine was deliberately deleted.
Pliki w paczce (2)
  • SKILL.md 5 KB
  • lib/__init__.py 9 KB

Wersje

RepozytoriumWynikLicencja
Ta strona · hazarsozer/ren-os90MIT
juxt/claude-plugins100MIT
JcmXiF/code-map100MIT
nguyenthienthanh/aura-frog95MIT

Migawka bazy z 13.11.2026 · wersja paczki ceb357c4e573 (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 100graphify-codebase
    Wdraża i przeszukuje graf kodu graphify przy projektowaniu, przeglądzie i ustalaniu zasięgu wpływu zmian w bazie kodu.
  • 95graphify
    Odpowiada na pytania o architekturę i treść projektu z grafu wiedzy; szukanie symboli i diagramy obsługują inne skille.
  • 95graphify
    Zamienia folder lub repozytorium w mapę wiedzy z węzłami i społecznościami, do nawigacji po nowej bazie kodu.
  • 100graphify
    Mapuje folder lub bazę kodu na graf wiedzy za pomocą graphify CLI bez kosztów LLM i odpowiada na pytania o architekturę i zależności.
  • 100graph-setup
    Wdraża w przestrzeni roboczej z repozytoriami git narzędzie graphify: wykrywa lub instaluje je, buduje brakujące grafy i dodaje hooki git po commicie i merge.
  • 95graphify
    Odpowiada na pytania o bazę kodu, architekturę i relacje między plikami, budując trwały graf wiedzy z kodu, dokumentów, prac, obrazów i wideo.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.