gemini-cli - 💡(How to fix) Fix SKILL.md parity with Claude Code

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
RAW_BUFFERClick to expand / collapse

What would you like to be added?

Claude Code supports several extensions to the agents skill format. It would be great if some of them could be supported by Gemini CLI as well.

In particular:

  • String substitutions in the skill contents Claude Code reference: $ARGUMENTS and ${CLAUDE_SKILL_DIR} are the ones I've found most useful. The latter is very useful for referencing a script or resource in the skill's scripts directory.
  • Injecting dynamic context from shell command execution Claude Code reference: Useful for setup steps that need to run each time a script runs. Makes the agent's job easier by not having to invoke tools to run those setup commands.
  • Pre-approve tools for a skill Claude Code reference: I find this extremely useful, especially when running skills in a subagent where Gemini CLI does not support any interactive permission prompts. Of course the tool/permission names won't be 100% compatible between Claude Code and Gemini CLI, but would be easy enough to migrate.
  • Launching skills in a subagent Claude Code reference: context: fork to run the skill in a subagent of a configurable type. Though I find that the Claude Code implementation of this is actually quite confusing, since the flag is silently ignored when a skill is invoked from within an existing subagent. It honestly seems like a pretty poorly designed abstraction, so maybe not worth bringing over right now.

Why is this needed?

Supporting these extensions in Gemini CLI would make it much easier for users who have written custom skills to migrate from Claude Code to Gemini CLI, as well as make a large library of Claude Code skills compatible with Gemini CLI.

Additional context

I understand that some of these extensions might restrict how exactly skills are being executed. E.g. dynamic context and string substitutions imply that each time a skill is invoked, its content needs to be re-inserted into the context (since the substitutions make it different each time). Pre-approved tools require that the lifecycle of a given skill's execution is well defined, since those tools should only be pre-approved while the skill is "executing". I haven't checked what Gemini CLI's current implementation for Agent Skills looks like, so not sure if it would even be possible to support these additions without a major redesign.

Last but not least, there's a tradeoff here between sticking to an open, widely shared standard (Agent Skills), and adding custom extensions just to provide feature parity with a competitor's product. Pragmatically, the latter IMO could allow more people to try out and migrate to Gemini CLI, but it could also open a rabbit whole of new user expectations whenever the compatibility is not 100%.

extent analysis

TL;DR

Supporting Claude Code extensions in Gemini CLI, such as string substitutions and dynamic context injection, would require evaluating the feasibility of integrating these features without a major redesign of the Agent Skills implementation.

Guidance

  • Evaluate the current Gemini CLI implementation for Agent Skills to determine the feasibility of supporting Claude Code extensions.
  • Assess the potential impact of adding custom extensions on the overall design and user expectations of Gemini CLI.
  • Consider the tradeoff between maintaining an open standard and providing feature parity with Claude Code.
  • Review the Claude Code documentation to understand the specific requirements and limitations of each extension.

Example

No code snippet is provided as the issue is focused on discussing the feasibility of supporting Claude Code extensions in Gemini CLI.

Notes

The issue highlights the need for careful consideration of the design implications and potential user expectations when adding custom extensions to Gemini CLI. It is essential to weigh the benefits of providing feature parity with Claude Code against the potential risks of deviating from an open standard.

Recommendation

Apply a workaround by prioritizing the most essential Claude Code extensions and evaluating their feasibility for integration into Gemini CLI, while maintaining the open standard as much as possible. This approach allows for a balanced solution that addresses user needs while minimizing potential design and compatibility issues.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

gemini-cli - 💡(How to fix) Fix SKILL.md parity with Claude Code