Skip to content

feat: add local shell skill support via ShellTool#9

Open
John-Lin wants to merge 1 commit intomasterfrom
feature/responses-api-support
Open

feat: add local shell skill support via ShellTool#9
John-Lin wants to merge 1 commit intomasterfrom
feature/responses-api-support

Conversation

@John-Lin
Copy link
Copy Markdown
Owner

@John-Lin John-Lin commented Apr 4, 2026

Summary

  • Agents can now load local skill directories via shellSkills in servers_config.json
  • Each skill's description is auto-read from its SKILL.md frontmatter
  • A 30s-timeout async subprocess executor handles command execution, respecting per-request timeout_ms when provided
  • MCP servers and shell skills can coexist in the same config

Config example

{
  "shellSkills": [
    {"name": "obsidian-cli",      "path": "~/.claude/skills/obsidian-cli"},
    {"name": "obsidian-markdown", "path": "~/.claude/skills/obsidian-markdown"},
    {"name": "obsidian-bases",    "path": "~/.claude/skills/obsidian-bases"}
  ]
}

Test plan

  • uv run pytest -v tests/test_agents.py::TestShellExecutor — executor runs commands, merges stderr, respects cwd and timeout
  • uv run pytest -v tests/test_agents.py::TestFromDictShellSkills — config parsing, tilde expansion, description from SKILL.md, coexistence with MCP

🤖 Generated with Claude Code

Agents can now load local skill directories (e.g. ~/.claude/skills/) via
the shellSkills config key. Each skill's description is auto-read from its
SKILL.md frontmatter. A 30s-timeout async subprocess executor handles
command execution, respecting per-request timeout_ms when provided.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@John-Lin John-Lin force-pushed the feature/responses-api-support branch from a7b9e6d to 5d381c2 Compare April 4, 2026 08:25
@John-Lin John-Lin changed the title feat: add OPENAI_API_TYPE env var to switch between Responses and Chat Completions API feat: add local shell skill support via ShellTool Apr 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant