@google/gemini-cli-core 0.24.0-nightly.20260103.30f5c4af4 → 0.24.0-preview.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. package/dist/docs/cli/settings.md +1 -0
  2. package/dist/docs/cli/skills.md +156 -0
  3. package/dist/docs/cli/telemetry.md +3 -3
  4. package/dist/docs/cli/tutorials/skills-getting-started.md +124 -0
  5. package/dist/docs/cli/tutorials.md +4 -0
  6. package/dist/docs/get-started/configuration.md +32 -5
  7. package/dist/docs/sidebar.json +4 -0
  8. package/dist/src/agents/a2a-client-manager.d.ts +5 -0
  9. package/dist/src/agents/a2a-client-manager.js +130 -0
  10. package/dist/src/agents/a2a-client-manager.js.map +1 -1
  11. package/dist/src/agents/a2a-client-manager.test.js +27 -1
  12. package/dist/src/agents/a2a-client-manager.test.js.map +1 -1
  13. package/dist/src/agents/a2aUtils.d.ts +28 -0
  14. package/dist/src/agents/a2aUtils.js +111 -0
  15. package/dist/src/agents/a2aUtils.js.map +1 -0
  16. package/dist/src/agents/a2aUtils.test.js +147 -0
  17. package/dist/src/agents/a2aUtils.test.js.map +1 -0
  18. package/dist/src/agents/delegate-to-agent-tool.d.ts +2 -2
  19. package/dist/src/agents/delegate-to-agent-tool.js +6 -6
  20. package/dist/src/agents/delegate-to-agent-tool.js.map +1 -1
  21. package/dist/src/agents/delegate-to-agent-tool.test.js +37 -7
  22. package/dist/src/agents/delegate-to-agent-tool.test.js.map +1 -1
  23. package/dist/src/agents/introspection-agent.js +2 -2
  24. package/dist/src/agents/introspection-agent.js.map +1 -1
  25. package/dist/src/agents/introspection-agent.test.js +2 -2
  26. package/dist/src/agents/introspection-agent.test.js.map +1 -1
  27. package/dist/src/agents/local-executor.js +1 -1
  28. package/dist/src/agents/local-executor.js.map +1 -1
  29. package/dist/src/agents/local-executor.test.js +2 -2
  30. package/dist/src/agents/local-executor.test.js.map +1 -1
  31. package/dist/src/agents/local-invocation.d.ts +2 -2
  32. package/dist/src/agents/local-invocation.js +3 -3
  33. package/dist/src/agents/local-invocation.js.map +1 -1
  34. package/dist/src/agents/local-invocation.test.js +7 -5
  35. package/dist/src/agents/local-invocation.test.js.map +1 -1
  36. package/dist/src/agents/remote-invocation.d.ts +17 -3
  37. package/dist/src/agents/remote-invocation.js +104 -6
  38. package/dist/src/agents/remote-invocation.js.map +1 -1
  39. package/dist/src/agents/remote-invocation.test.js +184 -18
  40. package/dist/src/agents/remote-invocation.test.js.map +1 -1
  41. package/dist/src/agents/subagent-tool-wrapper.d.ts +2 -2
  42. package/dist/src/agents/subagent-tool-wrapper.js +6 -5
  43. package/dist/src/agents/subagent-tool-wrapper.js.map +1 -1
  44. package/dist/src/agents/subagent-tool-wrapper.test.js +17 -10
  45. package/dist/src/agents/subagent-tool-wrapper.test.js.map +1 -1
  46. package/dist/src/agents/types.d.ts +6 -0
  47. package/dist/src/code_assist/oauth2.js +31 -1
  48. package/dist/src/code_assist/oauth2.js.map +1 -1
  49. package/dist/src/code_assist/oauth2.test.js +75 -3
  50. package/dist/src/code_assist/oauth2.test.js.map +1 -1
  51. package/dist/src/code_assist/server.d.ts +5 -0
  52. package/dist/src/code_assist/server.js +19 -4
  53. package/dist/src/code_assist/server.js.map +1 -1
  54. package/dist/src/code_assist/server.test.js +19 -0
  55. package/dist/src/code_assist/server.test.js.map +1 -1
  56. package/dist/src/code_assist/setup.js +6 -4
  57. package/dist/src/code_assist/setup.js.map +1 -1
  58. package/dist/src/code_assist/setup.test.js +63 -0
  59. package/dist/src/code_assist/setup.test.js.map +1 -1
  60. package/dist/src/code_assist/types.d.ts +18 -0
  61. package/dist/src/config/config.d.ts +19 -3
  62. package/dist/src/config/config.js +49 -25
  63. package/dist/src/config/config.js.map +1 -1
  64. package/dist/src/config/config.test.js +81 -4
  65. package/dist/src/config/config.test.js.map +1 -1
  66. package/dist/src/config/models.js +6 -4
  67. package/dist/src/config/models.js.map +1 -1
  68. package/dist/src/config/models.test.js +21 -1
  69. package/dist/src/config/models.test.js.map +1 -1
  70. package/dist/src/core/client.js +39 -7
  71. package/dist/src/core/client.js.map +1 -1
  72. package/dist/src/core/client.test.js +93 -0
  73. package/dist/src/core/client.test.js.map +1 -1
  74. package/dist/src/core/contentGenerator.js +1 -1
  75. package/dist/src/core/contentGenerator.js.map +1 -1
  76. package/dist/src/core/contentGenerator.test.js +1 -1
  77. package/dist/src/core/contentGenerator.test.js.map +1 -1
  78. package/dist/src/core/coreToolHookTriggers.test.js +11 -9
  79. package/dist/src/core/coreToolHookTriggers.test.js.map +1 -1
  80. package/dist/src/core/coreToolScheduler.d.ts +1 -0
  81. package/dist/src/core/coreToolScheduler.js +30 -106
  82. package/dist/src/core/coreToolScheduler.js.map +1 -1
  83. package/dist/src/core/coreToolScheduler.test.js +21 -21
  84. package/dist/src/core/coreToolScheduler.test.js.map +1 -1
  85. package/dist/src/core/loggingContentGenerator.js +14 -2
  86. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  87. package/dist/src/core/prompts.js +1 -1
  88. package/dist/src/core/prompts.js.map +1 -1
  89. package/dist/src/core/sessionHookTriggers.d.ts +3 -2
  90. package/dist/src/core/sessionHookTriggers.js +8 -1
  91. package/dist/src/core/sessionHookTriggers.js.map +1 -1
  92. package/dist/src/core/turn.d.ts +16 -2
  93. package/dist/src/core/turn.js +2 -0
  94. package/dist/src/core/turn.js.map +1 -1
  95. package/dist/src/generated/git-commit.d.ts +2 -2
  96. package/dist/src/generated/git-commit.js +2 -2
  97. package/dist/src/generated/git-commit.js.map +1 -1
  98. package/dist/src/hooks/hookEventHandler.d.ts +6 -2
  99. package/dist/src/hooks/hookEventHandler.js +24 -3
  100. package/dist/src/hooks/hookEventHandler.js.map +1 -1
  101. package/dist/src/hooks/hookEventHandler.test.js +31 -8
  102. package/dist/src/hooks/hookEventHandler.test.js.map +1 -1
  103. package/dist/src/hooks/hookRunner.d.ts +2 -2
  104. package/dist/src/hooks/hookRunner.js +12 -4
  105. package/dist/src/hooks/hookRunner.js.map +1 -1
  106. package/dist/src/hooks/hookRunner.test.js +33 -0
  107. package/dist/src/hooks/hookRunner.test.js.map +1 -1
  108. package/dist/src/index.d.ts +3 -1
  109. package/dist/src/index.js +3 -2
  110. package/dist/src/index.js.map +1 -1
  111. package/dist/src/policy/config.js +60 -22
  112. package/dist/src/policy/config.js.map +1 -1
  113. package/dist/src/policy/config.test.js +21 -0
  114. package/dist/src/policy/config.test.js.map +1 -1
  115. package/dist/src/policy/persistence.test.js +1 -1
  116. package/dist/src/policy/persistence.test.js.map +1 -1
  117. package/dist/src/policy/policy-engine.js +22 -6
  118. package/dist/src/policy/policy-engine.js.map +1 -1
  119. package/dist/src/policy/policy-engine.test.js +206 -1
  120. package/dist/src/policy/policy-engine.test.js.map +1 -1
  121. package/dist/src/policy/toml-loader.d.ts +0 -8
  122. package/dist/src/policy/toml-loader.js +7 -70
  123. package/dist/src/policy/toml-loader.js.map +1 -1
  124. package/dist/src/policy/toml-loader.test.js +16 -6
  125. package/dist/src/policy/toml-loader.test.js.map +1 -1
  126. package/dist/src/policy/utils.d.ts +21 -0
  127. package/dist/src/policy/utils.js +42 -0
  128. package/dist/src/policy/utils.js.map +1 -0
  129. package/dist/src/policy/utils.test.js +64 -0
  130. package/dist/src/policy/utils.test.js.map +1 -0
  131. package/dist/src/scheduler/tool-executor.d.ts +22 -0
  132. package/dist/src/scheduler/tool-executor.js +198 -0
  133. package/dist/src/scheduler/tool-executor.js.map +1 -0
  134. package/dist/src/scheduler/tool-executor.test.d.ts +6 -0
  135. package/dist/src/scheduler/tool-executor.test.js +231 -0
  136. package/dist/src/scheduler/tool-executor.test.js.map +1 -0
  137. package/dist/src/skills/skillLoader.d.ts +28 -0
  138. package/dist/src/skills/skillLoader.js +77 -0
  139. package/dist/src/skills/skillLoader.js.map +1 -0
  140. package/dist/src/skills/skillLoader.test.d.ts +6 -0
  141. package/dist/src/skills/skillLoader.test.js +73 -0
  142. package/dist/src/skills/skillLoader.test.js.map +1 -0
  143. package/dist/src/{services → skills}/skillManager.d.ts +10 -20
  144. package/dist/src/skills/skillManager.js +89 -0
  145. package/dist/src/skills/skillManager.js.map +1 -0
  146. package/dist/src/skills/skillManager.test.d.ts +6 -0
  147. package/dist/src/skills/skillManager.test.js +128 -0
  148. package/dist/src/skills/skillManager.test.js.map +1 -0
  149. package/dist/src/telemetry/clearcut-logger/clearcut-logger.d.ts +5 -5
  150. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +8 -8
  151. package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
  152. package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +2 -2
  153. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +4 -4
  154. package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
  155. package/dist/src/telemetry/loggers.d.ts +3 -3
  156. package/dist/src/telemetry/loggers.js +4 -4
  157. package/dist/src/telemetry/loggers.js.map +1 -1
  158. package/dist/src/telemetry/loggers.test.js +6 -5
  159. package/dist/src/telemetry/loggers.test.js.map +1 -1
  160. package/dist/src/telemetry/types.d.ts +7 -7
  161. package/dist/src/telemetry/types.js +10 -10
  162. package/dist/src/telemetry/types.js.map +1 -1
  163. package/dist/src/test-utils/mock-message-bus.d.ts +1 -0
  164. package/dist/src/test-utils/mock-message-bus.js +29 -0
  165. package/dist/src/test-utils/mock-message-bus.js.map +1 -1
  166. package/dist/src/test-utils/mock-tool.d.ts +5 -3
  167. package/dist/src/test-utils/mock-tool.js +11 -10
  168. package/dist/src/test-utils/mock-tool.js.map +1 -1
  169. package/dist/src/tools/activate-skill.d.ts +2 -2
  170. package/dist/src/tools/activate-skill.js +6 -1
  171. package/dist/src/tools/activate-skill.js.map +1 -1
  172. package/dist/src/tools/activate-skill.test.js +7 -5
  173. package/dist/src/tools/activate-skill.test.js.map +1 -1
  174. package/dist/src/tools/confirmation-policy.test.js +2 -12
  175. package/dist/src/tools/confirmation-policy.test.js.map +1 -1
  176. package/dist/src/tools/edit.d.ts +27 -5
  177. package/dist/src/tools/edit.js +444 -137
  178. package/dist/src/tools/edit.js.map +1 -1
  179. package/dist/src/tools/edit.test.js +257 -525
  180. package/dist/src/tools/edit.test.js.map +1 -1
  181. package/dist/src/tools/get-internal-docs.d.ts +2 -2
  182. package/dist/src/tools/get-internal-docs.js +6 -6
  183. package/dist/src/tools/get-internal-docs.js.map +1 -1
  184. package/dist/src/tools/get-internal-docs.test.js +2 -1
  185. package/dist/src/tools/get-internal-docs.test.js.map +1 -1
  186. package/dist/src/tools/glob.d.ts +2 -2
  187. package/dist/src/tools/glob.js +1 -1
  188. package/dist/src/tools/glob.js.map +1 -1
  189. package/dist/src/tools/glob.test.js +2 -1
  190. package/dist/src/tools/glob.test.js.map +1 -1
  191. package/dist/src/tools/grep.d.ts +2 -2
  192. package/dist/src/tools/grep.js +1 -1
  193. package/dist/src/tools/grep.js.map +1 -1
  194. package/dist/src/tools/grep.test.js +5 -4
  195. package/dist/src/tools/grep.test.js.map +1 -1
  196. package/dist/src/tools/ls.d.ts +2 -2
  197. package/dist/src/tools/ls.js +2 -2
  198. package/dist/src/tools/ls.js.map +1 -1
  199. package/dist/src/tools/ls.test.js +2 -1
  200. package/dist/src/tools/ls.test.js.map +1 -1
  201. package/dist/src/tools/mcp-client.d.ts +2 -2
  202. package/dist/src/tools/mcp-client.js +2 -1
  203. package/dist/src/tools/mcp-client.js.map +1 -1
  204. package/dist/src/tools/mcp-tool.d.ts +2 -2
  205. package/dist/src/tools/mcp-tool.js +7 -7
  206. package/dist/src/tools/mcp-tool.js.map +1 -1
  207. package/dist/src/tools/mcp-tool.test.js +11 -6
  208. package/dist/src/tools/mcp-tool.test.js.map +1 -1
  209. package/dist/src/tools/memoryTool.d.ts +3 -3
  210. package/dist/src/tools/memoryTool.js +2 -2
  211. package/dist/src/tools/memoryTool.js.map +1 -1
  212. package/dist/src/tools/memoryTool.test.js +5 -2
  213. package/dist/src/tools/memoryTool.test.js.map +1 -1
  214. package/dist/src/tools/message-bus-integration.test.js +10 -37
  215. package/dist/src/tools/message-bus-integration.test.js.map +1 -1
  216. package/dist/src/tools/read-file.d.ts +2 -2
  217. package/dist/src/tools/read-file.js +1 -1
  218. package/dist/src/tools/read-file.js.map +1 -1
  219. package/dist/src/tools/read-file.test.js +3 -2
  220. package/dist/src/tools/read-file.test.js.map +1 -1
  221. package/dist/src/tools/read-many-files.d.ts +2 -2
  222. package/dist/src/tools/read-many-files.js +2 -3
  223. package/dist/src/tools/read-many-files.js.map +1 -1
  224. package/dist/src/tools/read-many-files.test.js +3 -2
  225. package/dist/src/tools/read-many-files.test.js.map +1 -1
  226. package/dist/src/tools/ripGrep.d.ts +2 -2
  227. package/dist/src/tools/ripGrep.js +3 -4
  228. package/dist/src/tools/ripGrep.js.map +1 -1
  229. package/dist/src/tools/ripGrep.test.js +7 -6
  230. package/dist/src/tools/ripGrep.test.js.map +1 -1
  231. package/dist/src/tools/shell.d.ts +3 -4
  232. package/dist/src/tools/shell.js +9 -35
  233. package/dist/src/tools/shell.js.map +1 -1
  234. package/dist/src/tools/shell.test.js +40 -57
  235. package/dist/src/tools/shell.test.js.map +1 -1
  236. package/dist/src/tools/tool-registry.d.ts +11 -6
  237. package/dist/src/tools/tool-registry.js +13 -8
  238. package/dist/src/tools/tool-registry.js.map +1 -1
  239. package/dist/src/tools/tool-registry.test.js +14 -10
  240. package/dist/src/tools/tool-registry.test.js.map +1 -1
  241. package/dist/src/tools/tools.d.ts +5 -5
  242. package/dist/src/tools/tools.js +15 -17
  243. package/dist/src/tools/tools.js.map +1 -1
  244. package/dist/src/tools/tools.test.js +3 -1
  245. package/dist/src/tools/tools.test.js.map +1 -1
  246. package/dist/src/tools/web-fetch.d.ts +2 -2
  247. package/dist/src/tools/web-fetch.js +4 -4
  248. package/dist/src/tools/web-fetch.js.map +1 -1
  249. package/dist/src/tools/web-fetch.test.js +17 -19
  250. package/dist/src/tools/web-fetch.test.js.map +1 -1
  251. package/dist/src/tools/web-search.d.ts +2 -2
  252. package/dist/src/tools/web-search.js +3 -4
  253. package/dist/src/tools/web-search.js.map +1 -1
  254. package/dist/src/tools/web-search.test.js +2 -1
  255. package/dist/src/tools/web-search.test.js.map +1 -1
  256. package/dist/src/tools/write-file.d.ts +2 -2
  257. package/dist/src/tools/write-file.js +3 -3
  258. package/dist/src/tools/write-file.js.map +1 -1
  259. package/dist/src/tools/write-file.test.js +4 -1
  260. package/dist/src/tools/write-file.test.js.map +1 -1
  261. package/dist/src/tools/write-todos.d.ts +2 -2
  262. package/dist/src/tools/write-todos.js +5 -4
  263. package/dist/src/tools/write-todos.js.map +1 -1
  264. package/dist/src/tools/write-todos.test.js +2 -1
  265. package/dist/src/tools/write-todos.test.js.map +1 -1
  266. package/dist/src/utils/editCorrector.test.js +1 -1
  267. package/dist/src/utils/editCorrector.test.js.map +1 -1
  268. package/dist/src/utils/events.d.ts +46 -1
  269. package/dist/src/utils/events.js +21 -0
  270. package/dist/src/utils/events.js.map +1 -1
  271. package/dist/src/utils/events.test.js +25 -0
  272. package/dist/src/utils/events.test.js.map +1 -1
  273. package/dist/src/utils/shell-permissions.test.js +27 -0
  274. package/dist/src/utils/shell-permissions.test.js.map +1 -1
  275. package/dist/src/utils/terminal.d.ts +2 -0
  276. package/dist/src/utils/terminal.js +6 -0
  277. package/dist/src/utils/terminal.js.map +1 -1
  278. package/dist/src/utils/tokenCalculation.js +20 -5
  279. package/dist/src/utils/tokenCalculation.js.map +1 -1
  280. package/dist/src/utils/tokenCalculation.test.js +11 -2
  281. package/dist/src/utils/tokenCalculation.test.js.map +1 -1
  282. package/dist/src/utils/tool-utils.test.js +2 -1
  283. package/dist/src/utils/tool-utils.test.js.map +1 -1
  284. package/dist/tsconfig.tsbuildinfo +1 -1
  285. package/package.json +1 -1
  286. package/dist/google-gemini-cli-core-0.24.0-nightly.20251227.37be16243.tgz +0 -0
  287. package/dist/src/services/skillManager.js +0 -157
  288. package/dist/src/services/skillManager.js.map +0 -1
  289. package/dist/src/services/skillManager.test.js +0 -169
  290. package/dist/src/services/skillManager.test.js.map +0 -1
  291. package/dist/src/tools/smart-edit.d.ts +0 -78
  292. package/dist/src/tools/smart-edit.js +0 -722
  293. package/dist/src/tools/smart-edit.js.map +0 -1
  294. package/dist/src/tools/smart-edit.test.js +0 -591
  295. package/dist/src/tools/smart-edit.test.js.map +0 -1
  296. /package/dist/src/{services/skillManager.test.d.ts → agents/a2aUtils.test.d.ts} +0 -0
  297. /package/dist/src/{tools/smart-edit.test.d.ts → policy/utils.test.d.ts} +0 -0
@@ -111,3 +111,4 @@ they appear in the UI.
111
111
  | ----------------------------------- | ------------------------------------------------------- | ------------------------------------------------------------ | ------- |
112
112
  | Enable Codebase Investigator | `experimental.codebaseInvestigatorSettings.enabled` | Enable the Codebase Investigator agent. | `true` |
113
113
  | Codebase Investigator Max Num Turns | `experimental.codebaseInvestigatorSettings.maxNumTurns` | Maximum number of turns for the Codebase Investigator agent. | `10` |
114
+ | Agent Skills | `experimental.skills` | Enable Agent Skills (experimental). | `false` |
@@ -0,0 +1,156 @@
1
+ # Agent Skills
2
+
3
+ _Note: This is an experimental feature enabled via `experimental.skills`. You
4
+ can also search for "Skills" within the `/settings` interactive UI to toggle
5
+ this and manage other skill-related settings._
6
+
7
+ Agent Skills allow you to extend Gemini CLI with specialized expertise,
8
+ procedural workflows, and task-specific resources. Based on the
9
+ [Agent Skills](https://agentskills.io) open standard, a "skill" is a
10
+ self-contained directory that packages instructions and assets into a
11
+ discoverable capability.
12
+
13
+ ## Overview
14
+
15
+ Unlike general context files ([`GEMINI.md`](./gemini-md.md)), which provide
16
+ persistent project-wide background, Skills represent **on-demand expertise**.
17
+ This allows Gemini to maintain a vast library of specialized capabilities—such
18
+ as security auditing, cloud deployments, or codebase migrations—without
19
+ cluttering the model's immediate context window.
20
+
21
+ Gemini autonomously decides when to employ a skill based on your request and the
22
+ skill's description. When a relevant skill is identified, the model "pulls in"
23
+ the full instructions and resources required to complete the task using the
24
+ `activate_skill` tool.
25
+
26
+ ## Key Benefits
27
+
28
+ - **Shared Expertise:** Package complex workflows (like a specific team's PR
29
+ review process) into a folder that anyone can use.
30
+ - **Repeatable Workflows:** Ensure complex multi-step tasks are performed
31
+ consistently by providing a procedural framework.
32
+ - **Resource Bundling:** Include scripts, templates, or example data alongside
33
+ instructions so the agent has everything it needs.
34
+ - **Progressive Disclosure:** Only skill metadata (name and description) is
35
+ loaded initially. Detailed instructions and resources are only disclosed when
36
+ the model explicitly activates the skill, saving context tokens.
37
+
38
+ ## Skill Discovery Tiers
39
+
40
+ Gemini CLI discovers skills from three primary locations:
41
+
42
+ 1. **Project Skills** (`.gemini/skills/`): Project-specific skills that are
43
+ typically committed to version control and shared with the team.
44
+ 2. **User Skills** (`~/.gemini/skills/`): Personal skills available across all
45
+ your projects.
46
+ 3. **Extension Skills**: Skills bundled within installed
47
+ [extensions](../extensions/index.md).
48
+
49
+ **Precedence:** If multiple skills share the same name, higher-precedence
50
+ locations override lower ones: **Project > User > Extension**.
51
+
52
+ ## Managing Skills
53
+
54
+ ### In an Interactive Session
55
+
56
+ Use the `/skills` slash command to view and manage available expertise:
57
+
58
+ - `/skills list` (default): Shows all discovered skills and their status.
59
+ - `/skills disable <name>`: Prevents a specific skill from being used.
60
+ - `/skills enable <name>`: Re-enables a disabled skill.
61
+ - `/skills reload`: Refreshes the list of discovered skills from all tiers.
62
+
63
+ _Note: `/skills disable` and `/skills enable` default to the `user` scope. Use
64
+ `--scope project` to manage project-specific settings._
65
+
66
+ ### From the Terminal
67
+
68
+ The `gemini skills` command provides management utilities:
69
+
70
+ ```bash
71
+ # List all discovered skills
72
+ gemini skills list
73
+
74
+ # Enable/disable skills. Can use --scope to specify project or user
75
+ gemini skills enable my-expertise
76
+ gemini skills disable my-expertise
77
+ ```
78
+
79
+ ## Creating a Skill
80
+
81
+ A skill is a directory containing a `SKILL.md` file at its root. This file uses
82
+ YAML frontmatter for metadata and Markdown for instructions.
83
+
84
+ ### Basic Structure
85
+
86
+ ```markdown
87
+ ---
88
+ name: <unique-name>
89
+ description: <what the skill does and when Gemini should use it>
90
+ ---
91
+
92
+ <your instructions for how the agent should behave / use the skill>
93
+ ```
94
+
95
+ - **`name`**: A unique identifier (lowercase, alphanumeric, and dashes).
96
+ - **`description`**: The most critical field. Gemini uses this to decide when
97
+ the skill is relevant. Be specific about the expertise provided.
98
+ - **Body**: Everything below the second `---` is injected as expert procedural
99
+ guidance for the model.
100
+
101
+ ### Example: Team Code Reviewer
102
+
103
+ ```markdown
104
+ ---
105
+ name: code-reviewer
106
+ description:
107
+ Expertise in reviewing code for style, security, and performance. Use when the
108
+ user asks for "feedback," a "review," or to "check" their changes.
109
+ ---
110
+
111
+ # Code Reviewer
112
+
113
+ You are an expert code reviewer. When reviewing code, follow this workflow:
114
+
115
+ 1. **Analyze**: Review the staged changes or specific files provided. Ensure
116
+ that the changes are scoped properly and represent minimal changes required
117
+ to address the issue.
118
+ 2. **Style**: Ensure code follows the project's conventions and idiomatic
119
+ patterns as described in the `GEMINI.md` file.
120
+ 3. **Security**: Flag any potential security vulnerabilities.
121
+ 4. **Tests**: Verify that new logic has corresponding test coverage and that
122
+ the test coverage adequately validates the changes.
123
+
124
+ Provide your feedback as a concise bulleted list of "Strengths" and
125
+ "Opportunities."
126
+ ```
127
+
128
+ ### Resource Conventions
129
+
130
+ While you can structure your skill directory however you like, the Agent Skills
131
+ standard encourages these conventions:
132
+
133
+ - **`scripts/`**: Executable scripts (bash, python, node) the agent can run.
134
+ - **`references/`**: Static documentation, schemas, or example data for the
135
+ agent to consult.
136
+ - **`assets/`**: Code templates, boilerplate, or binary resources.
137
+
138
+ When a skill is activated, Gemini CLI provides the model with a tree view of the
139
+ entire skill directory, allowing it to discover and utilize these assets.
140
+
141
+ ## How it Works (Security & Privacy)
142
+
143
+ 1. **Discovery**: At the start of a session, Gemini CLI scans the discovery
144
+ tiers and injects the name and description of all enabled skills into the
145
+ system prompt.
146
+ 2. **Activation**: When Gemini identifies a task matching a skill's
147
+ description, it calls the `activate_skill` tool.
148
+ 3. **Consent**: You will see a confirmation prompt in the UI detailing the
149
+ skill's name, purpose, and the directory path it will gain access to.
150
+ 4. **Injection**: Upon your approval:
151
+ - The `SKILL.md` body and folder structure is added to the conversation
152
+ history.
153
+ - The skill's directory is added to the agent's allowed file paths, granting
154
+ it permission to read any bundled assets.
155
+ 5. **Execution**: The model proceeds with the specialized expertise active. It
156
+ is instructed to prioritize the skill's procedural guidance within reason.
@@ -297,7 +297,7 @@ Captures startup configuration and user prompt submissions.
297
297
 
298
298
  #### Tools
299
299
 
300
- Captures tool executions, output truncation, and Smart Edit behavior.
300
+ Captures tool executions, output truncation, and Edit behavior.
301
301
 
302
302
  - `gemini_cli.tool_call`: Emitted for each tool (function) call.
303
303
  - **Attributes**:
@@ -325,11 +325,11 @@ Captures tool executions, output truncation, and Smart Edit behavior.
325
325
  - `lines` (int)
326
326
  - `prompt_id` (string)
327
327
 
328
- - `gemini_cli.smart_edit_strategy`: Smart Edit strategy chosen.
328
+ - `gemini_cli.edit_strategy`: Edit strategy chosen.
329
329
  - **Attributes**:
330
330
  - `strategy` (string)
331
331
 
332
- - `gemini_cli.smart_edit_correction`: Smart Edit correction result.
332
+ - `gemini_cli.edit_correction`: Edit correction result.
333
333
  - **Attributes**:
334
334
  - `correction` ("success" | "failure")
335
335
 
@@ -0,0 +1,124 @@
1
+ # Getting Started with Agent Skills
2
+
3
+ Agent Skills allow you to extend Gemini CLI with specialized expertise. This
4
+ tutorial will guide you through creating your first skill, enabling it, and
5
+ using it in a session.
6
+
7
+ ## 1. Enable Agent Skills
8
+
9
+ Agent Skills are currently an experimental feature and must be enabled in your
10
+ settings.
11
+
12
+ ### Via the interactive UI
13
+
14
+ 1. Start a Gemini CLI session by running `gemini`.
15
+ 2. Type `/settings` to open the interactive settings dialog.
16
+ 3. Search for "Skills".
17
+ 4. Toggle **Agent Skills** to `true`.
18
+ 5. Press `Esc` to save and exit. You may need to restart the CLI for the
19
+ changes to take effect.
20
+
21
+ ### Via `settings.json`
22
+
23
+ Alternatively, you can manually edit your global settings file at
24
+ `~/.gemini/settings.json` (create it if it doesn't exist):
25
+
26
+ ```json
27
+ {
28
+ "experimental": {
29
+ "skills": true
30
+ }
31
+ }
32
+ ```
33
+
34
+ ## 2. Create Your First Skill
35
+
36
+ A skill is a directory containing a `SKILL.md` file. Let's create an **API
37
+ Auditor** skill that helps you verify if local or remote endpoints are
38
+ responding correctly.
39
+
40
+ 1. **Create the skill directory structure:**
41
+
42
+ ```bash
43
+ mkdir -p .gemini/skills/api-auditor/scripts
44
+ ```
45
+
46
+ 2. **Create the `SKILL.md` file:** Create a file at
47
+ `.gemini/skills/api-auditor/SKILL.md` with the following content:
48
+
49
+ ```markdown
50
+ ---
51
+ name: api-auditor
52
+ description:
53
+ Expertise in auditing and testing API endpoints. Use when the user asks to
54
+ "check", "test", or "audit" a URL or API.
55
+ ---
56
+
57
+ # API Auditor Instructions
58
+
59
+ You act as a QA engineer specialized in API reliability. When this skill is
60
+ active, you MUST:
61
+
62
+ 1. **Audit**: Use the bundled `scripts/audit.js` utility to check the
63
+ status of the provided URL.
64
+ 2. **Report**: Analyze the output (status codes, latency) and explain any
65
+ failures in plain English.
66
+ 3. **Secure**: Remind the user if they are testing a sensitive endpoint
67
+ without an `https://` protocol.
68
+ ```
69
+
70
+ 3. **Create the bundled Node.js script:** Create a file at
71
+ `.gemini/skills/api-auditor/scripts/audit.js`. This script will be used by
72
+ the agent to perform the actual check:
73
+
74
+ ```javascript
75
+ // .gemini/skills/api-auditor/scripts/audit.js
76
+ const url = process.argv[2];
77
+
78
+ if (!url) {
79
+ console.error('Usage: node audit.js <url>');
80
+ process.exit(1);
81
+ }
82
+
83
+ console.log(`Auditing ${url}...`);
84
+ fetch(url, { method: 'HEAD' })
85
+ .then((r) => console.log(`Result: Success (Status ${r.status})`))
86
+ .catch((e) => console.error(`Result: Failed (${e.message})`));
87
+ ```
88
+
89
+ ## 3. Verify the Skill is Discovered
90
+
91
+ Use the `/skills` slash command (or `gemini skills list` from your terminal) to
92
+ see if Gemini CLI has found your new skill.
93
+
94
+ In a Gemini CLI session:
95
+
96
+ ```
97
+ /skills list
98
+ ```
99
+
100
+ You should see `api-auditor` in the list of available skills.
101
+
102
+ ## 4. Use the Skill in a Chat
103
+
104
+ Now, let's see the skill in action. Start a new session and ask a question about
105
+ an endpoint.
106
+
107
+ **User:** "Can you audit http://geminili.com"
108
+
109
+ Gemini will recognize the request matches the `api-auditor` description and will
110
+ ask for your permission to activate it.
111
+
112
+ **Model:** (After calling `activate_skill`) "I've activated the **api-auditor**
113
+ skill. I'll run the audit script now..."
114
+
115
+ Gemini will then use the `run_shell_command` tool to execute your bundled Node
116
+ script:
117
+
118
+ `node .gemini/skills/api-auditor/scripts/audit.js http://geminili.com`
119
+
120
+ ## Next Steps
121
+
122
+ - Explore [Agent Skills Authoring Guide](../skills.md#creating-a-skill) to learn
123
+ about more advanced skill features.
124
+ - Learn how to share skills via [Extensions](../../extensions/index.md).
@@ -2,6 +2,10 @@
2
2
 
3
3
  This page contains tutorials for interacting with Gemini CLI.
4
4
 
5
+ ## Agent Skills
6
+
7
+ - [Getting Started with Agent Skills](./tutorials/skills-getting-started.md)
8
+
5
9
  ## Setting up a Model Context Protocol (MCP) server
6
10
 
7
11
  > [!CAUTION] Before using a third-party MCP server, ensure you trust its source
@@ -685,11 +685,9 @@ their corresponding top-level category object in your `settings.json` file.
685
685
  - **Requires restart:** Yes
686
686
 
687
687
  - **`tools.enableHooks`** (boolean):
688
- - **Description:** Enable the hooks system for intercepting and customizing
689
- Gemini CLI behavior. When enabled, hooks configured in settings will execute
690
- at appropriate lifecycle events (BeforeTool, AfterTool, BeforeModel, etc.).
691
- Requires MessageBus integration.
692
- - **Default:** `false`
688
+ - **Description:** Enables the hooks system experiment. When disabled, the
689
+ hooks system is completely deactivated regardless of other settings.
690
+ - **Default:** `true`
693
691
  - **Requires restart:** Yes
694
692
 
695
693
  #### `mcp`
@@ -848,6 +846,11 @@ their corresponding top-level category object in your `settings.json` file.
848
846
  - **Default:** `"auto"`
849
847
  - **Requires restart:** Yes
850
848
 
849
+ - **`experimental.useOSC52Paste`** (boolean):
850
+ - **Description:** Use OSC 52 sequence for pasting instead of clipboardy
851
+ (useful for remote sessions).
852
+ - **Default:** `false`
853
+
851
854
  - **`experimental.introspectionAgentSettings.enabled`** (boolean):
852
855
  - **Description:** Enable the Introspection Agent.
853
856
  - **Default:** `false`
@@ -862,11 +865,20 @@ their corresponding top-level category object in your `settings.json` file.
862
865
 
863
866
  #### `hooks`
864
867
 
868
+ - **`hooks.enabled`** (boolean):
869
+ - **Description:** Canonical toggle for the hooks system. When disabled, no
870
+ hooks will be executed.
871
+ - **Default:** `false`
872
+
865
873
  - **`hooks.disabled`** (array):
866
874
  - **Description:** List of hook names (commands) that should be disabled.
867
875
  Hooks in this list will not execute even if configured.
868
876
  - **Default:** `[]`
869
877
 
878
+ - **`hooks.notifications`** (boolean):
879
+ - **Description:** Show visual indicators when hooks are executing.
880
+ - **Default:** `true`
881
+
870
882
  - **`hooks.BeforeTool`** (array):
871
883
  - **Description:** Hooks that execute before tool execution. Can intercept,
872
884
  validate, or modify tool calls.
@@ -921,6 +933,21 @@ their corresponding top-level category object in your `settings.json` file.
921
933
  - **Description:** Hooks that execute before tool selection. Can filter or
922
934
  prioritize available tools dynamically.
923
935
  - **Default:** `[]`
936
+
937
+ #### `admin`
938
+
939
+ - **`admin.secureModeEnabled`** (boolean):
940
+ - **Description:** If true, disallows yolo mode from being used.
941
+ - **Default:** `false`
942
+
943
+ - **`admin.extensions.enabled`** (boolean):
944
+ - **Description:** If false, disallows extensions from being installed or
945
+ used.
946
+ - **Default:** `true`
947
+
948
+ - **`admin.mcp.enabled`** (boolean):
949
+ - **Description:** If false, disallows MCP servers from being used.
950
+ - **Default:** `true`
924
951
  <!-- SETTINGS-AUTOGEN:END -->
925
952
 
926
953
  #### `mcpServers`
@@ -88,6 +88,10 @@
88
88
  "label": "Session Management",
89
89
  "slug": "docs/cli/session-management"
90
90
  },
91
+ {
92
+ "label": "Agent Skills",
93
+ "slug": "docs/cli/skills"
94
+ },
91
95
  {
92
96
  "label": "Settings",
93
97
  "slug": "docs/cli/settings"
@@ -71,3 +71,8 @@ export declare class A2AClientManager {
71
71
  */
72
72
  cancelTask(agentName: string, taskId: string): Promise<Task>;
73
73
  }
74
+ /**
75
+ * Creates a fetch implementation that adapts standard A2A SDK requests to the
76
+ * proto-JSON dialect and endpoint shapes required by Vertex AI Agent Engine.
77
+ */
78
+ export declare function createAdapterFetch(baseFetch: typeof fetch): typeof fetch;
@@ -48,6 +48,9 @@ export class A2AClientManager {
48
48
  if (authHandler) {
49
49
  fetchImpl = createAuthenticatingFetchWithRetry(fetch, authHandler);
50
50
  }
51
+ // Wrap with custom adapter for ADK Reasoning Engine compatibility
52
+ // TODO: Remove this when a2a-js fixes compatibility
53
+ fetchImpl = createAdapterFetch(fetchImpl);
51
54
  const resolver = new DefaultAgentCardResolver({ fetchImpl });
52
55
  const options = ClientFactoryOptions.createFrom(ClientFactoryOptions.default, {
53
56
  transports: [
@@ -162,4 +165,131 @@ export class A2AClientManager {
162
165
  }
163
166
  }
164
167
  }
168
+ /**
169
+ * Maps TaskState proto-JSON enums to lower-case strings.
170
+ */
171
+ function mapTaskState(state) {
172
+ if (!state)
173
+ return state;
174
+ if (state.startsWith('TASK_STATE_')) {
175
+ return state.replace('TASK_STATE_', '').toLowerCase();
176
+ }
177
+ return state.toLowerCase();
178
+ }
179
+ /**
180
+ * Creates a fetch implementation that adapts standard A2A SDK requests to the
181
+ * proto-JSON dialect and endpoint shapes required by Vertex AI Agent Engine.
182
+ */
183
+ export function createAdapterFetch(baseFetch) {
184
+ return async (input, init) => {
185
+ const urlStr = input;
186
+ // 2. Dialect Mapping (Request)
187
+ let body = init?.body;
188
+ let isRpc = false;
189
+ let rpcId;
190
+ if (typeof body === 'string') {
191
+ try {
192
+ let jsonBody = JSON.parse(body);
193
+ // Unwrap JSON-RPC if present
194
+ if (jsonBody.jsonrpc === '2.0') {
195
+ isRpc = true;
196
+ rpcId = jsonBody.id;
197
+ jsonBody = jsonBody.params;
198
+ }
199
+ // Apply dialect translation to the message object
200
+ const message = jsonBody.message || jsonBody;
201
+ if (message && typeof message === 'object') {
202
+ // Role: user -> ROLE_USER, agent/model -> ROLE_AGENT
203
+ if (message.role === 'user')
204
+ message.role = 'ROLE_USER';
205
+ if (message.role === 'agent' || message.role === 'model') {
206
+ message.role = 'ROLE_AGENT';
207
+ }
208
+ // Strip SDK-specific 'kind' field
209
+ delete message.kind;
210
+ // Map 'parts' to 'content' (Proto-JSON dialect often uses 'content' or typed parts)
211
+ // Also strip 'kind' from parts.
212
+ if (Array.isArray(message.parts)) {
213
+ message.content = message.parts.map((p) => {
214
+ const { kind: _k, ...rest } = p;
215
+ // If it's a simple text part, ensure it matches { text: "..." }
216
+ if (p.kind === 'text')
217
+ return { text: p.text };
218
+ return rest;
219
+ });
220
+ delete message.parts;
221
+ }
222
+ }
223
+ body = JSON.stringify(jsonBody);
224
+ }
225
+ catch (error) {
226
+ debugLogger.debug('[A2AClientManager] Failed to parse request body for dialect translation:', error);
227
+ // Non-JSON or parse error; let the baseFetch handle it.
228
+ }
229
+ }
230
+ const response = await baseFetch(urlStr, { ...init, body });
231
+ // Map response back
232
+ if (response.ok) {
233
+ try {
234
+ const responseData = await response.clone().json();
235
+ const result = responseData.task || responseData.message || responseData;
236
+ // Restore 'kind' for the SDK and a2aUtils parsing
237
+ if (result && typeof result === 'object' && !result.kind) {
238
+ if (responseData.task || (result.id && result.status)) {
239
+ result.kind = 'task';
240
+ }
241
+ else if (responseData.message || result.messageId) {
242
+ result.kind = 'message';
243
+ }
244
+ }
245
+ // Restore 'kind' on parts so extractMessageText works
246
+ if (result?.parts && Array.isArray(result.parts)) {
247
+ for (const part of result.parts) {
248
+ if (!part.kind) {
249
+ if (part.file)
250
+ part.kind = 'file';
251
+ else if (part.data)
252
+ part.kind = 'data';
253
+ else if (part.text)
254
+ part.kind = 'text';
255
+ }
256
+ }
257
+ }
258
+ // Recursively restore 'kind' on artifact parts
259
+ if (result?.artifacts && Array.isArray(result.artifacts)) {
260
+ for (const artifact of result.artifacts) {
261
+ if (artifact.parts && Array.isArray(artifact.parts)) {
262
+ for (const part of artifact.parts) {
263
+ if (!part.kind) {
264
+ if (part.file)
265
+ part.kind = 'file';
266
+ else if (part.data)
267
+ part.kind = 'data';
268
+ else if (part.text)
269
+ part.kind = 'text';
270
+ }
271
+ }
272
+ }
273
+ }
274
+ }
275
+ // Map Task States back to SDK expectations
276
+ if (result && typeof result === 'object' && result.status) {
277
+ result.status.state = mapTaskState(result.status.state);
278
+ }
279
+ if (isRpc) {
280
+ return new Response(JSON.stringify({
281
+ jsonrpc: '2.0',
282
+ id: rpcId,
283
+ result,
284
+ }), response);
285
+ }
286
+ return new Response(JSON.stringify(result), response);
287
+ }
288
+ catch (_e) {
289
+ // Non-JSON response or unwrapping failure
290
+ }
291
+ }
292
+ return response;
293
+ };
294
+ }
165
295
  //# sourceMappingURL=a2a-client-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"a2a-client-manager.js","sourceRoot":"","sources":["../../../src/agents/a2a-client-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"a2a-client-manager.js","sourceRoot":"","sources":["../../../src/agents/a2a-client-manager.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { vi, describe, it, expect, beforeEach, afterEach } from 'vitest';
7
- import { A2AClientManager, } from './a2a-client-manager.js';
7
+ import { A2AClientManager, createAdapterFetch, } from './a2a-client-manager.js';
8
8
  import { ClientFactory, DefaultAgentCardResolver } from '@a2a-js/sdk/client';
9
9
  import { debugLogger } from '../utils/debugLogger.js';
10
10
  import { createAuthenticatingFetchWithRetry, ClientFactoryOptions, } from '@a2a-js/sdk/client';
@@ -207,5 +207,31 @@ describe('A2AClientManager', () => {
207
207
  await expect(manager.cancelTask('NonExistentAgent', 'task123')).rejects.toThrow("Agent 'NonExistentAgent' not found.");
208
208
  });
209
209
  });
210
+ describe('createAdapterFetch', () => {
211
+ it('normalizes TASK_STATE_ enums to lower-case', async () => {
212
+ const baseFetch = vi
213
+ .fn()
214
+ .mockResolvedValue(new Response(JSON.stringify({ status: { state: 'TASK_STATE_WORKING' } })));
215
+ const adapter = createAdapterFetch(baseFetch);
216
+ const response = await adapter('http://example.com', {
217
+ method: 'POST',
218
+ body: '{}',
219
+ });
220
+ const data = await response.json();
221
+ expect(data.status.state).toBe('working');
222
+ });
223
+ it('lowercases non-prefixed task states', async () => {
224
+ const baseFetch = vi
225
+ .fn()
226
+ .mockResolvedValue(new Response(JSON.stringify({ status: { state: 'WORKING' } })));
227
+ const adapter = createAdapterFetch(baseFetch);
228
+ const response = await adapter('http://example.com', {
229
+ method: 'POST',
230
+ body: '{}',
231
+ });
232
+ const data = await response.json();
233
+ expect(data.status.state).toBe('working');
234
+ });
235
+ });
210
236
  });
211
237
  //# sourceMappingURL=a2a-client-manager.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"a2a-client-manager.test.js","sourceRoot":"","sources":["../../../src/agents/a2a-client-manager.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"a2a-client-manager.test.js","sourceRoot":"","sources":["../../../src/agents/a2a-client-manager.test.ts"],"names":[],"mappings":"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"}