static-index
글로벌 정적 컨텍스트 파일의 인덱스를 제공합니다. 다른 스킬이나 에이전트가 정보를 찾을 때 먼저 참조해야 할 파일을 자연어 쿼리로 찾아줍니다. "내 정보", "보안 규칙" 등의 요청에 적절한 static 파일 경로를 반환합니다.
SKILL.mdcontext/static-index
GitHubStatic Context Index
Return the minimum relevant global context path, then read only what the current task needs. Never assume a listed type exists; verify it first.
Workflow
- Resolve this skill directory and prefer the bundled
scripts/static-index.shhelper. - Search by type or natural-language query.
- Confirm the returned file exists.
- Read only the relevant section. Avoid printing credentials or unrelated personal data.
Commands
# Discover the actual files currently present. Installed skills are excluded.
scripts/static-index.sh list
# Search paths by user intent. The query is matched as a literal string, both
# against the type keywords and, when none match, against file contents.
scripts/static-index.sh search "보안 규칙"
scripts/static-index.sh search "IaC 배포"
# A search that matches nothing also returns non-zero, so exit status alone
# distinguishes "no such context" from a hit.
# Resolve one known type. A missing optional file returns non-zero.
scripts/static-index.sh get security
scripts/static-index.sh get iac
scripts/static-index.sh get notion
Supported types are whoami, security, context, iac, services,
obsidian, notion, vault, korean, readme, and persona. The repository may
contain only a subset; list is the source of truth.
Boundaries
~/.agents/skillsis Codex's user skill directory, not static context. Every candidate thatlist,refresh,search, orgetwould return is excluded by its own real location, so neither a directory symlink nor a file symlink nor a symlink chain pointing into that tree reintroduces it under another name. A candidate whose real location cannot be resolved is dropped rather than published. Refusing a candidate never hides a legitimate file of the same name deeper in the tree:getandsearchfall through to it, so they agree withlistinstead of reporting the type missing.- When several files share a name, the shallowest path wins and ties break lexicographically, so a nested backup copy is never served in place of the live root file.
- Do not create missing files unless the user asks to configure that context.
- Do not expose secret values from Vault, Notion, or other integration files in summaries.
- Do not refresh
.index.jsonunless a persistent index was requested; normallist,search, andgetoperations are read-only. refreshbuilds into a sibling temporary file and renames it into place, and fails without touching the existing index when the directory walk fails. An emptyfilesarray therefore means the directory really is empty.
Resource
scripts/static-index.sh: Bash 3.2-compatible context discovery helper.tests/test-static-index.sh: hermetic behavioural tests. Each case builds its own throwawayAGENTS_DIR, so the suite never touches~/.agents.