Skip to main content

code-structure

List all symbols in a file or search for functions, types, methods, and variables across the workspace. Use instead of glob+grep to understand file structure or find where a symbol is defined. Activated by runectl lsp symbols, workspace-symbols, or runectl syntax searchnode/querynode.

설치로 이동

소스 정보

저장소
unstablebuild/rune
최근 소스 활동
2026년 3월 26일 19:53
감지된 SKILL.md 언어
영어
스타
1,035
포크
80

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
code-structure
description
List all symbols in a file or search for functions, types, methods, and variables across the workspace. Use instead of glob+grep to understand file structure or find where a symbol is defined. Activated by runectl lsp symbols, workspace-symbols, or runectl syntax searchnode/querynode.
allowed-tools
Bash(runectl:*)
# Code Structure Explore code structure without reading entire files. ## runectl lsp symbols List document symbols (functions, types, variables). ``` Usage: runectl lsp symbols <file> [flags] Flags: -F, --format string Output format: table, json, or Go template ``` Use to get an overview of a file's structure. Example — list all symbols in `bash.go`: ```bash $ runectl lsp symbols agent/agentools/bash.go defaultBashTimeout [Constant] 39:1-39:39 maxBashTimeout [Constant] 40:1-40:39 maxCommandOutput [Constant] 41:1-41:32 bashTool [Struct] 44:5-47:1 bashArgs [Struct] 49:5-54:1 newBash [Function] 56:0-58:1 (*bashTool).Definition [Method] 60:0-104:1 (*bashTool).Summary [Method] 106:0-112:1 (*bashTool).Execute [Method] 114:0-181:1 processWatcher [Struct] 183:5-185:1 newProcessWatcher [Function] 187:0-189:1 (*processWatcher).WatchProcess [Method] 191:0-193:1 ``` Each entry shows `name [Kind] startLine:startCol-endLine:endCol`. This gives a complete structural overview without reading the file. ## runectl lsp workspace-symbols Search workspace symbols by name. ``` Usage: runectl lsp workspace-symbols <query> [flags] Flags: -F, --format string Output format: table, json, or Go template ``` Use to locate a function or type by name across the project. Example — search for `Service`: ```bash $ runectl lsp workspace-symbols Service Service Interface file:///src/rune-agent/llm/service.go:62:5 mockService Struct file:///src/rune-agent/agent/agent_test.go:2227:5 stubService Struct file:///src/rune-agent/agentshell/agentshell_test.go:1266:5 ... ``` Returns all matching symbols with their kind and location. The query is a fuzzy match on the symbol name. ## runectl syntax searchnode Search workspace for known node types. ``` Node types: scope|namespace|reference|func|var|method|type Usage: runectl syntax searchnode <node-type> [flags] Flags: -F, --format string Output format: table, json, or Go template ``` Node types are pipe-separated. Use to find "all functions" or "all types" workspace-wide without knowing exact names. Example — find all type definitions: ```bash $ runectl syntax searchnode type file:///src/rune-agent/llm/service.go Service 62:5-62:12 local.definition.type file:///src/rune-agent/llm/service.go ReasoningEffort 80:5-80:20 local.definition.type file:///src/rune-agent/agent/agent.go Config 44:5-44:11 local.definition.type ... ``` Each line shows `file text line:col-endLine:endCol capture_name`. Use `"func|method"` for all functions and methods. ## runectl syntax querynode Query a file for known node types. ``` Node types: scope|namespace|reference|func|var|method|type Usage: runectl syntax querynode <file> <node-type> [flags] Flags: -F, --format string Output format: table, json, or Go template ``` Same as `searchnode` but scoped to a single file. Example — find all functions in `bash.go`: ```bash $ runectl syntax querynode agent/agentools/bash.go func file:///src/rune-agent/agent/agentools/bash.go newBash 56:5-56:12 local.definition.function file:///src/rune-agent/agent/agentools/bash.go newProcessWatcher 187:5-187:22 local.definition.function ``` Only free functions are returned; use `"func|method"` to include methods as well.
GitHub에서 보기