.codex/skills/gwt-spec-search/SKILL.md
Semantic search over SPEC Issues (GitHub Issue cache at ~/.gwt/cache/issues/) using vector embeddings. Use when searching for existing specs, finding related specs, checking for duplicate specs, or determining which spec owns a scope. Mandatory preflight before gwt-discussion when the work may need a SPEC owner. Use when user says 'search specs', 'find related specs', 'check for duplicate specs', or asks which spec owns a scope.
npx skillsauth add akiojin/gwt gwt-spec-searchInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
gwt maintains a vector search index of SPEC Issues using ChromaDB embeddings (model: intfloat/multilingual-e5-base). SPECs are stored as gwt-spec labeled GitHub Issues and cached locally at ~/.gwt/cache/issues/. The index is stored at ~/.gwt/index/<repo-hash>/worktrees/<worktree-hash>/specs/ and is rebuilt from the cache. Use gwt issue spec pull --all to refresh the cache before searching.
When the user asks any of the following, use SPEC search before manual file grep or directory listing:
Minimum workflow:
search-specs with 2-3 semantic queries derived from the requestWhen the gwt TUI launches an agent pane, the following env vars are exported automatically:
GWT_PROJECT_ROOT — absolute path of the active worktreeGWT_REPO_HASH — SHA256[:16] of the normalized origin URLGWT_WORKTREE_HASH — SHA256[:16] of the canonicalized worktree absolute path~/.gwt/runtime/chroma-venv/bin/python3 ~/.gwt/runtime/chroma_index_runner.py \
--action search-specs \
--repo-hash "$GWT_REPO_HASH" \
--worktree-hash "$GWT_WORKTREE_HASH" \
--project-root "$GWT_PROJECT_ROOT" \
--query "your search query" \
--n-results 10
If the SPEC index does not yet exist, the runner builds it inline (full mode) from the repo-scoped Issue cache and emits NDJSON progress on stderr before returning the search result.
To force a full re-index (normally handled by the watcher / auto-build):
~/.gwt/runtime/chroma-venv/bin/python3 ~/.gwt/runtime/chroma_index_runner.py \
--action index-specs \
--repo-hash "$GWT_REPO_HASH" \
--worktree-hash "$GWT_WORKTREE_HASH" \
--project-root "$GWT_PROJECT_ROOT" \
--mode full
{"ok": true, "specResults": [
{"spec_id": "1939", "title": "gwt-spec: Semantic search platform", "status": "open", "phase": "phase/review", "dir_name": "#1939", "distance": 0.08}
]}
search-specs refreshes the worktree-scoped SPEC index from the repo-scoped Issue cache before non-TUI searches--no-auto-build to suppress)gwt-project-search insteadgwt-issue-search insteadtools
Create distinctive, production-grade terminal user interfaces. Use when building TUI components with ratatui, CLI output styling, or xterm.js terminal rendering. Triggers: 'design TUI', 'terminal UI', 'TUIデザイン', 'ターミナルUI', 'ratatui widget'
testing
Mandatory preflight before gwt-discussion, gwt-register-issue, and gwt-fix-issue. Use proactively before creating any SPEC or Issue owner or before reusing an existing one. Searches SPEC Issues, GitHub Issues, and project files via ChromaDB. Triggers: 'search', 'find related', 'check duplicates'.
business
Use when the user wants to register new work from a bug report, idea, or task description and an existing GitHub Issue number is not already known.
data-ai
Semantic search over project source files using vector embeddings. Use when the user asks to search project files, find related implementation files, or locate source files for a feature, bug, or concept.