plugins/claude-ecosystem/skills/list/SKILL.md
List Claude Code components. Actions: env-vars, sessions, settings, skills, tools.
npx skillsauth add melodic-software/claude-code-plugins listInstall 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.
List various Claude Code components based on the requested action.
| Action | Description |
|--------|-------------|
| skills (default) | List all available skills with descriptions |
| env-vars | List environment variables (configured or researched) |
| sessions | List recent sessions with sizes, ages, resumability |
| settings | List settings.json configuration options |
| tools | 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.
List ALL available Claude Code skills by running the list_skills.py 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
Execute with Python using the path found in Step 1:
python "<found-path>/list_skills.py"
The script finds ALL skills from:
~/.claude/skills/*/SKILL.md.claude/skills/*/SKILL.md (current working directory)~/.claude/plugins/marketplaces/*/*/skills/*/SKILL.mdThe 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.
Research and list ALL known Claude Code environment variables from multiple sources, or show currently configured variables across all settings scopes.
| Argument | Description |
|----------|-------------|
| --configured | Show currently configured env vars from all settings files |
| --official-only | Only show variables documented in official docs |
| --changelog-only | Only extract from CHANGELOG.md |
| --full-research | Run comprehensive MCP research (slower, more complete) |
| (none) | Default: official docs + changelog extraction |
| Arguments | Behavior |
|-----------|----------|
| (none) | Research: official docs + changelog |
| --configured | Read current settings files only (no research) |
| --official-only | Research: official docs only |
| --changelog-only | Research: changelog extraction only |
| --full-research | Research: all sources including MCP agents |
When --configured is passed, skip all research and read currently configured environment variables from all settings scopes.
| Scope | Path | Description |
|-------|------|-------------|
| Enterprise | ~/.claude/enterprise/settings.json | IT-managed defaults |
| User/Global | ~/.claude/settings.json | User preferences |
| Project | .claude/settings.json | Project-specific settings |
| Local | .claude/settings.local.json | Gitignored local overrides |
env section from each## 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)
Mask sensitive values in output:
ANTHROPIC_API_KEY -> "sk-***" (show prefix only)AWS_* credentials -> maskedGOOGLE_* credentials -> maskedWhen no --configured flag, research environment variables from multiple sources.
Launch research agents in parallel to gather env var information from multiple sources.
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.
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.
Invoke docs-management skill with query:
Search for "environment variables" and "env" in Claude Code documentation.
Include any settings, configuration, or customization topics.
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_KEYHTTP_PROXY, HTTPS_PROXY, NO_PROXYNote the version where each variable was introduced.
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 |
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)
These are commonly used variables (verify against current docs):
ANTHROPIC_API_KEY - API key (required unless using Bedrock/Vertex)CLAUDE_CODE_USE_BEDROCK - Use AWS BedrockCLAUDE_CODE_USE_VERTEX - Use Google Vertex AIHTTP_PROXY / HTTPS_PROXY - Proxy configurationNO_PROXY - Proxy bypass listCLAUDE_BASH_MAINTAIN_PROJECT_WORKING_DIR - Working directory behaviorDISABLE_AUTOUPDATER - Disable auto-updatesDISABLE_TELEMETRY - Disable telemetryCLAUDE_HOOK_* - Custom hook environment variables (repo-specific)Note: This quick reference may be outdated. Always run the full command for current information.
Display recent Claude Code sessions for the current project (or all projects), showing size, age, and whether they can be resumed.
| Argument | Description | Default |
|----------|-------------|---------|
| --all | List sessions from all projects | false |
| --limit N | Maximum sessions to display | 10 |
| --agents | Include agent transcripts in listing | false |
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
# 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
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
claude --resume {session-id}/session-stats for aggregate statisticsResearch 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.
| Argument | Description |
|----------|-------------|
| (none) | Default: Full hierarchy - show user/project/local/managed settings with precedence |
| --fields-only | Schema reference - list all available fields with types and defaults |
| --current | Show current project settings values only (no hierarchy) |
| --category <name> | Filter by category: core, permissions, sandbox, hooks, plugins, attribution |
| --scope <scope> | Limit to specific scope: user, project, local, managed |
| Arguments | Behavior |
|-----------|----------|
| (none) | Read all settings files, display hierarchy with precedence |
| --fields-only | Research schema, display available fields with types/defaults |
| --current | Read project settings only, display explicit values |
| --category X | Filter output to specific category (works with all modes) |
| --scope X | Limit hierarchy to specific scope (hierarchy mode only) |
Claude Code settings follow a precedence order (higher overrides lower):
| Priority | Scope | Path | Description |
|----------|-------|------|-------------|
| 1 (Highest) | Managed | ~/.claude/managed/settings.json | IT-enforced (cannot be overridden) |
| 2 | CLI Args | --model, etc. | Command line overrides |
| 3 | Local | .claude/settings.local.json | Gitignored local overrides |
| 4 | Project | .claude/settings.json | Shared project settings |
| 5 (Lowest) | User | ~/.claude/settings.json | User preferences |
When no arguments are provided, display the complete settings hierarchy showing precedence.
Read all settings files that exist:
~/.claude/managed/settings.json (managed)~/.claude/settings.json (user).claude/settings.json (project).claude/settings.local.json (local)Calculate effective values - Later scopes override earlier (except managed which is enforced)
Display merged view with source indication
## 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.
When --fields-only is passed, research and display all available settings fields with types and defaults.
Invoke docs-management skill:
Search for "settings.json" and "configuration" in Claude Code documentation.
Include settings schema, available fields, and configuration options.
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.
Reference the schema at: https://json.schemastore.org/claude-code-settings.json
## 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]
When --current is passed, display only the explicitly configured values in the current project's settings.
.claude/settings.json (project settings)## 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 | Fields Included |
|----------|-----------------|
| core | model, language, autoUpdatesChannel, cleanupPeriodDays, respectGitignore, outputStyle, alwaysThinkingEnabled, plansDirectory, showTurnDuration |
| permissions | permissions.* (all permission fields) |
| sandbox | sandbox.* (all sandbox fields) |
| hooks | hooks, disableAllHooks, allowManagedHooksOnly |
| plugins | enabledPlugins, extraKnownMarketplaces |
| attribution | attribution.commit, attribution.pr |
Introspect your current tool context and enumerate all core Claude Code tools with their complete parameter schemas.
List only core built-in tools (not installed MCP server tools):
| Argument | Description |
|----------|-------------|
| --category <cat> | Filter by category: file, execution, interaction, planning, web, code, mcp |
| --tool <name> | Show detailed info for a specific tool (e.g., --tool Read) |
Parse any provided arguments:
--category specified, note the category filter--tool specified, note the specific tool nameExamine your current system context to enumerate all available core tools. For each tool, extract:
Group tools into these categories:
| Category | Tools |
|----------|-------|
| file | Read, Write, Edit, Glob, Grep, NotebookEdit |
| execution | Bash, Task, TaskOutput, KillShell |
| interaction | AskUserQuestion, TodoWrite |
| planning | EnterPlanMode, ExitPlanMode |
| web | WebFetch, WebSearch |
| code | LSP, Skill |
| mcp | ListMcpResourcesTool, ReadMcpResourceTool |
--category was specified, show only tools in that category--tool was specified, show only that tool with full detailed viewSummary 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
development
Search Milan Jovanovic's .NET blog for Clean Architecture, DDD, CQRS, EF Core, and ASP.NET Core patterns. Use for finding applicable patterns, code examples, and architecture guidance. Invoke when working with .NET projects that could benefit from proven architectural patterns.
tools
Install and configure Data API Builder (DAB) for production SQL Server MCP access with RBAC
tools
Manage MssqlMcp servers - status, rebuild, and upstream updates
tools
Developer environment setup guides for Windows, macOS, Linux, and WSL. Use when setting up development machines, installing tools, configuring environments, or following platform-specific setup guides. Covers package management, shell/terminal, code editors, AI tooling, containerization, databases, and more.