Awesome-omni-skill list
List Claude Code components. Actions: env-vars, sessions, settings, skills, tools.
git clone https://github.com/diegosouzapw/awesome-omni-skill
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/tools/list" ~/.claude/skills/diegosouzapw-awesome-omni-skill-list && rm -rf "$T"
skills/tools/list/SKILL.mdList Claude Code Components
List various Claude Code components based on the requested action.
Argument Routing
| Action | Description |
|---|---|
(default) | List all available skills with descriptions |
| List environment variables (configured or researched) |
| List recent sessions with sizes, ages, resumability |
| List settings.json configuration options |
| List core Claude Code tools with parameters |
When invoked without arguments, default to
skills.
Parse
$ARGUMENTS to determine the action. The first token is the action keyword. Remaining tokens are passed as sub-arguments to the action handler.
Action: skills
List ALL available Claude Code skills by running the list_skills.py script.
Step 1: Find the Script
Locate list_skills.py in the claude-ecosystem plugin:
# Check installed plugins first find ~/.claude/plugins -name "list_skills.py" -path "*claude-ecosystem*" 2>/dev/null | head -1
If not found, check current repo (for development):
find . -name "list_skills.py" -path "*claude-ecosystem*" 2>/dev/null | head -1
Step 2: Run the Script
Execute with Python using the path found in Step 1:
python "<found-path>/list_skills.py"
What the Script Scans
The script finds ALL skills from:
- Personal skills:
~/.claude/skills/*/SKILL.md - Project skills:
(current working directory).claude/skills/*/SKILL.md - Plugin skills:
~/.claude/plugins/marketplaces/*/*/skills/*/SKILL.md
Output Format
The script outputs formatted markdown:
## Personal Skills (~/.claude/skills/) ### **skill-name** Description from SKILL.md frontmatter. --- ## Project Skills (.claude/skills/) ### **skill-name** Description from SKILL.md frontmatter. --- ## Plugin Skills ### **plugin-name:skill-name** Description from SKILL.md frontmatter. --- **Total: X skills** (Y personal, Z project, W plugin)
Output the script results directly - they are already formatted.
Action: env-vars
Research and list ALL known Claude Code environment variables from multiple sources, or show currently configured variables across all settings scopes.
Sub-arguments
| Argument | Description |
|---|---|
| Show currently configured env vars from all settings files |
| Only show variables documented in official docs |
| Only extract from CHANGELOG.md |
| Run comprehensive MCP research (slower, more complete) |
| (none) | Default: official docs + changelog extraction |
Behavior Matrix
| Arguments | Behavior |
|---|---|
| (none) | Research: official docs + changelog |
| Read current settings files only (no research) |
| Research: official docs only |
| Research: changelog extraction only |
| Research: all sources including MCP agents |
Mode: --configured
When
--configured is passed, skip all research and read currently configured environment variables from all settings scopes.
Settings File Hierarchy (Precedence: Enterprise < User < Project < Local)
| Scope | Path | Description |
|---|---|---|
| Enterprise | | IT-managed defaults |
| User/Global | | User preferences |
| Project | | Project-specific settings |
| Local | | Gitignored local overrides |
Workflow
- Read each settings file if it exists
- Extract
section from eachenv - Calculate effective values (later scopes override earlier)
- Display merged view with source indication
Output Format
## Currently Configured Environment Variables | Variable | Value | Source | Overridden By | |----------|-------|--------|---------------| | DISABLE_TELEMETRY | "1" | user | project | | ANTHROPIC_API_KEY | "sk-***" | user | - | | CLAUDE_HOOK_LOG_DIR | "./logs" | project | - | | DISABLE_AUTOUPDATER | "0" | enterprise | - | ### By Scope **Enterprise** (~/.claude/enterprise/settings.json) - DISABLE_AUTOUPDATER = "0" **User** (~/.claude/settings.json) - DISABLE_TELEMETRY = "1" - ANTHROPIC_API_KEY = "sk-***" (masked) **Project** (.claude/settings.json) - DISABLE_TELEMETRY = "0" (overrides user) - CLAUDE_HOOK_LOG_DIR = "./logs" **Local** (.claude/settings.local.json) (none configured)
Security Note
Mask sensitive values in output:
->ANTHROPIC_API_KEY
(show prefix only)"sk-***"
credentials -> maskedAWS_*
credentials -> maskedGOOGLE_*
Mode: Research (Default)
When no
--configured flag, research environment variables from multiple sources.
Step 1: Parallel Research via Agents
Launch research agents in parallel to gather env var information from multiple sources.
Agent 1: MCP Research (full-research mode only)
Spawn
mcp-research agent:
Research Claude Code environment variables using perplexity and firecrawl. Search for: - "Claude Code environment variables configuration" - "anthropic claude cli env vars" - "ANTHROPIC_API_KEY CLAUDE_CODE environment" Extract ALL environment variables mentioned, including: - Variable name - Default value (if mentioned) - Purpose/description - Source URL Return structured findings with source citations.
Agent 2: Official Documentation
Spawn
claude-code-guide agent:
First WebFetch https://code.claude.com/docs/en/claude_code_docs_map.md to find relevant doc pages about environment variables and settings. Then WebFetch these specific pages: - Settings/configuration pages - Environment variables documentation - Any pages mentioning ANTHROPIC_*, CLAUDE_*, DISABLE_*, ENABLE_* Do NOT use Skill tool (not available). Return complete env var tables with source URLs.
Skill: Local Documentation Cache
Invoke
docs-management skill with query:
Search for "environment variables" and "env" in Claude Code documentation. Include any settings, configuration, or customization topics.
Step 2: Changelog Extraction
WebFetch the CHANGELOG.md to extract environment variables:
URL: https://raw.githubusercontent.com/anthropics/claude-code/main/CHANGELOG.md
Extract all patterns matching:
ANTHROPIC_*CLAUDE_*DISABLE_*ENABLE_**_TIMEOUT*_API_KEY
,HTTP_PROXY
,HTTPS_PROXYNO_PROXY
Note the version where each variable was introduced.
Step 3: Consolidate and Categorize
Merge findings from all sources, deduplicate, and categorize:
| Category | Criteria |
|---|---|
| OFFICIAL | Documented on code.claude.com/docs |
| CHANGELOG | In CHANGELOG but not in official docs |
| DISCOVERED | Found via MCP research only |
Step 4: Output Report
Format the complete list as structured tables:
## Claude Code Environment Variables ### Official (Documented) | Variable | Default | Purpose | Category | |----------|---------|---------|----------| | ANTHROPIC_API_KEY | (required) | API key for Anthropic API | Auth | | CLAUDE_CODE_USE_BEDROCK | "0" | Use AWS Bedrock instead of Anthropic API | Provider | | CLAUDE_CODE_USE_VERTEX | "0" | Use Google Vertex AI | Provider | | ... | ... | ... | ... | ### Changelog (Undocumented) | Variable | Default | Purpose | Version Added | |----------|---------|---------|---------------| | CLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR | "0" | Keep project working directory | v2.x | | ... | ... | ... | ... | ### Discovered (MCP Research) | Variable | Default | Purpose | Source | |----------|---------|---------|--------| | ... | ... | ... | [source URL] | --- ## Sources - Official: https://code.claude.com/docs/en/settings - Changelog: https://github.com/anthropics/claude-code/blob/main/CHANGELOG.md - MCP: perplexity, firecrawl (if --full-research)
Known Environment Variables (Quick Reference)
These are commonly used variables (verify against current docs):
Authentication & Provider
- API key (required unless using Bedrock/Vertex)ANTHROPIC_API_KEY
- Use AWS BedrockCLAUDE_CODE_USE_BEDROCK
- Use Google Vertex AICLAUDE_CODE_USE_VERTEX
Proxy & Network
/HTTP_PROXY
- Proxy configurationHTTPS_PROXY
- Proxy bypass listNO_PROXY
Behavior
- Working directory behaviorCLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR
- Disable auto-updatesDISABLE_AUTOUPDATER
- Disable telemetryDISABLE_TELEMETRY
Hooks
- Custom hook environment variables (repo-specific)CLAUDE_HOOK_*
Note: This quick reference may be outdated. Always run the full command for current information.
Action: sessions
Display recent Claude Code sessions for the current project (or all projects), showing size, age, and whether they can be resumed.
Sub-arguments
| Argument | Description | Default |
|---|---|---|
| List sessions from all projects | false |
| Maximum sessions to display | 10 |
| Include agent transcripts in listing | false |
Step 1: Determine Target Directory
if ALL_PROJECTS; then TARGET_DIR="$HOME/.claude/projects" else PROJECT_PATH=$(pwd | sed 's/[\/:]/-/g' | sed 's/^-//') TARGET_DIR="$HOME/.claude/projects/$PROJECT_PATH" fi
Step 2: List Sessions
# Find session files (not agent files), sorted by modification time find "$TARGET_DIR" -name "*.jsonl" ! -name "agent-*" -type f -printf '%T@ %s %p\n' 2>/dev/null | \ sort -rn | head -$LIMIT | while read timestamp size path; do filename=$(basename "$path") age=$(( ($(date +%s) - ${timestamp%.*}) / 86400 )) size_h=$(numfmt --to=iec-i --suffix=B $size) echo "$filename $size_h ${age}d ago" done
Step 3: Display Results
Recent Sessions =============== Project: D--repos-gh-melodic-claude-code-plugins # Session ID Size Age Resumable --- --------------------------------------- ------- ------- --------- 1 4165caab-4f86-4fc8-a901-fdcf2307a7cd 8.4M today Yes 2 faf4b0f3-1f1f-438a-b40b-1a7ef4cb1718 7.9M today Yes 3 55e42424-f5b6-4a26-98d5-1bed9176bf50 15M 1d Yes 4 336198a5-dfa4-4266-86dc-3d90158b8e30 15M 2d Yes 5 83d6bc93-3337-4b9e-8818-7141effbbcf0 14M 4d Yes ... Total: 507 sessions (645M) Tip: Use /cleanup-sessions 7 to remove old sessions
Notes
- Sessions can be resumed using
claude --resume {session-id} - Session IDs are UUIDs assigned by Claude Code
- Large sessions (>10MB) indicate long conversations
- Use
for aggregate statistics/session-stats
Action: settings
Research and list all known Claude Code
settings.json configuration options, show the current settings hierarchy with precedence, or display only current project settings.
Note: Environment variables are documented separately. Use the
env-vars action for environment variable documentation.
Sub-arguments
| Argument | Description |
|---|---|
| (none) | Default: Full hierarchy - show user/project/local/managed settings with precedence |
| Schema reference - list all available fields with types and defaults |
| Show current project settings values only (no hierarchy) |
| Filter by category: , , , , , |
| Limit to specific scope: , , , |
Behavior Matrix
| Arguments | Behavior |
|---|---|
| (none) | Read all settings files, display hierarchy with precedence |
| Research schema, display available fields with types/defaults |
| Read project settings only, display explicit values |
| Filter output to specific category (works with all modes) |
| Limit hierarchy to specific scope (hierarchy mode only) |
Settings File Hierarchy
Claude Code settings follow a precedence order (higher overrides lower):
| Priority | Scope | Path | Description |
|---|---|---|---|
| 1 (Highest) | Managed | | IT-enforced (cannot be overridden) |
| 2 | CLI Args | , etc. | Command line overrides |
| 3 | Local | | Gitignored local overrides |
| 4 | Project | | Shared project settings |
| 5 (Lowest) | User | | User preferences |
Mode: Default (Full Hierarchy)
When no arguments are provided, display the complete settings hierarchy showing precedence.
Workflow
-
Read all settings files that exist:
(managed)~/.claude/managed/settings.json
(user)~/.claude/settings.json
(project).claude/settings.json
(local).claude/settings.local.json
-
Calculate effective values - Later scopes override earlier (except managed which is enforced)
-
Display merged view with source indication
Output Format
## Settings Hierarchy (Effective Configuration) ### Precedence Order (highest to lowest) 1. Managed settings (enforced) - cannot be overridden 2. Command line arguments 3. Local project settings (.claude/settings.local.json) 4. Shared project settings (.claude/settings.json) 5. User settings (~/.claude/settings.json) ### Core Settings | Setting | Effective Value | Source | Overridden? | |---------|-----------------|--------|-------------| | model | opus | project | - | | cleanupPeriodDays | 30 | default | - | | respectGitignore | true | default | - | | plansDirectory | ~/.claude/plans | default | - | | showTurnDuration | true | default | - | ### Permissions Settings | Setting | Effective Value | Source | Overridden? | |---------|-----------------|--------|-------------| | defaultMode | bypassPermissions | project | user | | allow | [list...] | project | - | | deny | [list...] | project | - | ### Sandbox Settings (Show if sandbox configured, otherwise note "Not configured - defaults to disabled") ### Hook Settings | Setting | Effective Value | Source | Overridden? | |---------|-----------------|--------|-------------| | disableAllHooks | false | project | - | | hooks | {} | default | - | ### Status Line (Show statusLine configuration if set) ### Plugin Settings (Show enabledPlugins if configured) --- ## Environment Variables Use `list env-vars` action for environment variable documentation.
Mode: --fields-only (Schema Reference)
When
--fields-only is passed, research and display all available settings fields with types and defaults.
Workflow
- Research schema via docs-management skill and MCP servers
- Extract all known fields from official docs, changelog, and schema
- Categorize and display with types, defaults, and version info
Research Sources
Source 1: docs-management Skill
Invoke
docs-management skill:
Search for "settings.json" and "configuration" in Claude Code documentation. Include settings schema, available fields, and configuration options.
Source 2: MCP Research (comprehensive)
Spawn
mcp-research agent:
Research Claude Code settings.json schema and configuration options using perplexity and firecrawl. Search for: - "Claude Code settings.json schema" - "claude code configuration options" - Site:code.claude.com settings Extract ALL settings fields with: - Field name - Type (string, boolean, number, object, array) - Default value - Description - Version introduced (if known) Return structured findings with source citations.
Source 3: JSON Schema
Reference the schema at:
https://json.schemastore.org/claude-code-settings.json
Output Format
## Available Settings Fields ### Core Settings | Field | Type | Default | Description | Since | |-------|------|---------|-------------|-------| | $schema | string | - | JSON schema reference | - | | model | string | "sonnet" | Default model alias or full ID | - | | language | string | (system) | Interface language | v2.1.0 | | autoUpdatesChannel | enum | "latest" | "stable" or "latest" | - | | cleanupPeriodDays | number | 30 | Days before session cleanup | - | | respectGitignore | boolean | true | Honor .gitignore patterns | - | | outputStyle | string | null | Output formatting style | - | | alwaysThinkingEnabled | boolean | false | Enable extended thinking | - | | plansDirectory | string | ~/.claude/plans | Plan file storage | v2.1.9 | | showTurnDuration | boolean | true | Show turn timing | v2.1.7 | ### Permissions Settings | Field | Type | Default | Description | Since | |-------|------|---------|-------------|-------| | permissions.defaultMode | enum | "default" | default/acceptEdits/plan/dontAsk/bypassPermissions | - | | permissions.allow | array | [] | Allowed tool patterns | - | | permissions.deny | array | [] | Denied tool patterns | - | | permissions.ask | array | [] | Always-ask tool patterns | - | | permissions.additionalDirectories | array | [] | Extra allowed directories | - | | permissions.disableBypassPermissionsMode | string | null | Set to "disable" to block --dangerously-skip-permissions | - | ### Sandbox Settings (macOS/Linux only) | Field | Type | Default | Description | Since | |-------|------|---------|-------------|-------| | sandbox.enabled | boolean | false | Enable sandboxed bash | - | | sandbox.autoAllowBashIfSandboxed | boolean | true | Auto-allow bash in sandbox | - | | sandbox.excludedCommands | array | [] | Commands bypassing sandbox | - | | sandbox.allowUnsandboxedCommands | boolean | true | Allow unsandboxed commands | - | | sandbox.enableWeakerNestedSandbox | boolean | false | Linux nested sandbox | - | | sandbox.network.allowUnixSockets | array | [] | Allowed Unix sockets | - | | sandbox.network.allowLocalBinding | boolean | false | Allow local port binding | - | | sandbox.network.httpProxyPort | number | null | HTTP proxy port | - | | sandbox.network.socksProxyPort | number | null | SOCKS proxy port | - | ### Hook Settings | Field | Type | Default | Description | Since | |-------|------|---------|-------------|-------| | hooks | object | {} | Hook configuration by event | - | | disableAllHooks | boolean | false | Disable all hooks globally | - | | allowManagedHooksOnly | boolean | false | Only allow managed hooks | - | ### Attribution Settings | Field | Type | Default | Description | Since | |-------|------|---------|-------------|-------| | attribution.commit | string | null | Custom commit attribution | - | | attribution.pr | string | null | Custom PR attribution | - | ### Status Line Settings | Field | Type | Default | Description | Since | |-------|------|---------|-------------|-------| | statusLine.type | enum | - | "command" for custom status | - | | statusLine.command | string | - | Status line command | - | | statusLine.padding | number | 0 | Status line padding | - | | statusLine.timeout | number | 5000 | Command timeout (ms) | - | ### Plugin Settings | Field | Type | Default | Description | Since | |-------|------|---------|-------------|-------| | enabledPlugins | object | {} | Enabled plugins by namespace | - | | extraKnownMarketplaces | object | {} | Additional plugin marketplaces | - | ### Environment Variables | Field | Type | Default | Description | Since | |-------|------|---------|-------------|-------| | env | object | {} | Environment variables | - | **Note:** For detailed environment variable documentation, use the `env-vars` action. --- ## Sources - Schema: https://json.schemastore.org/claude-code-settings.json - Docs: https://code.claude.com/docs/en/settings - [MCP research citations]
Mode: --current (Current Project Only)
When
--current is passed, display only the explicitly configured values in the current project's settings.
Workflow
- Read
(project settings).claude/settings.json - Display only explicitly set values (not defaults)
- Skip research and hierarchy calculation
Output Format
## Current Project Settings **File:** `.claude/settings.json` ### Explicitly Configured Values #### Core Settings (none explicitly set - using defaults) #### Environment Variables 54 variables configured - see `.claude/settings.json` or use `list env-vars --configured` #### Permissions - defaultMode: "bypassPermissions" - allow: 26 patterns configured - deny: 24 patterns configured #### Hooks - disableAllHooks: false #### Status Line - type: "command" - command: "bun x ccusage statusline ..." - padding: 0 - timeout: 5000 --- Use `--fields-only` to see all available settings fields. Use `list env-vars` for environment variable details.
Category Definitions
| Category | Fields Included |
|---|---|
| model, language, autoUpdatesChannel, cleanupPeriodDays, respectGitignore, outputStyle, alwaysThinkingEnabled, plansDirectory, showTurnDuration |
| permissions.* (all permission fields) |
| sandbox.* (all sandbox fields) |
| hooks, disableAllHooks, allowManagedHooksOnly |
| enabledPlugins, extraKnownMarketplaces |
| attribution.commit, attribution.pr |
Action: tools
Introspect your current tool context and enumerate all core Claude Code tools with their complete parameter schemas.
Scope
List only core built-in tools (not installed MCP server tools):
- File Operations: Read, Write, Edit, Glob, Grep, NotebookEdit
- Execution: Bash, Task, TaskOutput, KillShell
- User Interaction: AskUserQuestion, TodoWrite
- Planning & Workflow: EnterPlanMode, ExitPlanMode
- Web & Network: WebFetch, WebSearch
- Code Intelligence: LSP, Skill
- MCP Resources: ListMcpResourcesTool, ReadMcpResourceTool
Sub-arguments
| Argument | Description |
|---|---|
| Filter by category: , , , , , , |
| Show detailed info for a specific tool (e.g., ) |
Execution
Step 1: Parse Arguments
Parse any provided arguments:
- If
specified, note the category filter--category - If
specified, note the specific tool name--tool
Step 2: Introspect Tool Context
Examine your current system context to enumerate all available core tools. For each tool, extract:
- Tool name - The function name
- Description - What the tool does (from the tool definition)
- Parameters - All parameters with:
- Name
- Type (string, number, boolean, array, object, enum)
- Required or optional
- Default value (if any)
- Constraints (min, max, enum values)
- Description
Step 3: Categorize
Group tools into these categories:
| Category | Tools |
|---|---|
| Read, Write, Edit, Glob, Grep, NotebookEdit |
| Bash, Task, TaskOutput, KillShell |
| AskUserQuestion, TodoWrite |
| EnterPlanMode, ExitPlanMode |
| WebFetch, WebSearch |
| LSP, Skill |
| ListMcpResourcesTool, ReadMcpResourceTool |
Step 4: Apply Filters
- If
was specified, show only tools in that category--category - If
was specified, show only that tool with full detailed view--tool
Step 5: Output
Summary View (default or --category):
## Core Claude Code Tools (N tools) ### Category Name (N tools) | Tool | Description | |------|-------------| | ToolName | Brief description | | ... | ... |
Detailed View (--tool ToolName):
## ToolName Full description from tool definition. ### Parameters | Name | Type | Required | Default | Description | |------|------|----------|---------|-------------| | param_name | type | Yes/No | value | Description | ### Constraints - List any enum values, min/max, format requirements ### Usage Notes - Key behaviors - Limitations - Best practices