Skip to content

Download a SKILL using an URL.#18

Merged
cmoulliard merged 7 commits into
mainfrom
support-to-fetch-skill
Jun 2, 2026
Merged

Download a SKILL using an URL.#18
cmoulliard merged 7 commits into
mainfrom
support-to-fetch-skill

Conversation

@cmoulliard
Copy link
Copy Markdown
Member

@cmoulliard cmoulliard commented Jun 1, 2026

Test done using the following command top of acp-java client project

acp -a opencode \
              --provider vertex-ai \
              -s https://github.com/snowdrop/acp-java-client/tree/main/client/skills/java-project-discovery -p "Discover the java project"
16:30:54,310 INFO  [quarkus] acp-java-client 0.1.0-SNAPSHOT on JVM (powered by Quarkus 3.35.3) started in 0.168s. 
16:30:54,314 INFO  [quarkus] Profile prod activated.                                                                                                                                                             
16:30:54,314 INFO  [quarkus] Installed features: [cdi]                                                                                                                                                           
16:30:54,412 INFO  [AcpCommand] Workspace CWD: /Users/cmoullia/code/quarkus/rewrite-mtool/_others/acp-java                                                                                                       
16:30:54,556 INFO  [AcpCommand] Workspace backed up to: /Users/cmoullia/code/quarkus/rewrite-mtool/_others/acp-java/target/workdirs/acp-java_2026-06-01_16:30:54                                                 
16:30:54,556 INFO  [AcpCommand] CWD set to backup directory: /Users/cmoullia/code/quarkus/rewrite-mtool/_others/acp-java/target/workdirs/acp-java_2026-06-01_16:30:54                                            
16:30:54,564 INFO  [StdioAcpClientTransport] ACP agent starting                                                                                                                                                  
16:30:54,577 INFO  [StdioAcpClientTransport] ACP agent started                                                                                                                                                   
16:30:56,071 INFO  [AcpCommand] Connected to the ACP agent: OpenCode - v1.15.12                                                                                                                                  
16:30:56,071 INFO  [AcpCommand] Protocol version: 1                                                                                                                                                              
16:30:56,329 INFO  [AcpCommand] Session created: ses_17c67b61bffexteo0vuQ3EJVAo with CWD: /Users/cmoullia/code/quarkus/rewrite-mtool/_others/acp-java/target/workdirs/acp-java_2026-06-01_16:30:54               
16:30:56,330 INFO  [AcpCommand] Agent model: opencode/big-pickle                                                                                                                                                 
16:30:56,331 INFO  [GitUtil] Skill repo already cloned at /Users/cmoullia/.agents/skills/acp-java-client — pulling latest changes        
...
16:30:56,927 INFO  [AcpCommand] Sending prompt: Discover the java project
                                                                                                                                                                                                                 
Please read the skill file at: /Users/cmoullia/.agents/skills/acp-java-client/client/skills/java-project-discovery and follow its instructions.  
...
16:30:59,485 INFO  [AcpCommand] [ToolUpdate] Loaded skill: java-project-discovery - COMPLETED                                                                                                                    
16:31:01,558 INFO  [AcpCommand] [ToolCall] todowrite (OTHER) - PENDING                                                                                                                                           
16:31:02,226 INFO  [AcpCommand] [ToolUpdate] todowrite - IN_PROGRESS                                                                                                                                             
16:31:02,230 INFO  [AcpCommand] [Plan] 4 steps:                                                                                                                                                                  
16:31:02,233 INFO  [AcpCommand]   - Locate build manifests (pom.xml, build.gradle) [IN_PROGRESS]                                                                                                                 
16:31:02,233 INFO  [AcpCommand]   - Parse core coordinates and environment context [PENDING]                                                                                                                     
16:31:02,233 INFO  [AcpCommand]   - Analyze runtime dependencies and frameworks [PENDING]                                                                                                                        
16:31:02,233 INFO  [AcpCommand]   - Create SUMMARY.md report [PENDING]                                           

This PR add the support to download skills from a github repository and to copy them under ~/.agents/skills which is the default home for many acp agents.

To avoid nested skills created under the home agents folder - ~/.agents/skills , a local repo is created and symlink added to ~/.agents/skills/<skill-leaf-name>



Signed-off-by: Charles Moulliard <cmoulliard@ibm.com>
Signed-off-by: Charles Moulliard <cmoulliard@ibm.com>
Comment thread client/src/main/java/io/quarkiverse/acp/AcpCommand.java Outdated
Comment thread client/src/main/java/io/quarkiverse/acp/AcpCommand.java Outdated
Copy link
Copy Markdown
Member

@xstefank xstefank left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think that we should limit only to git. Why the skill cannot be any txt on random site?

@cmoulliard
Copy link
Copy Markdown
Member Author

cmoulliard commented Jun 2, 2026

I don't think that we should limit only to git. Why the skill cannot be any txt on random site?

We can for sure support one raw SKILL.md file and use as folder name the last string of the url: https://my.company/ai/skills/bump-quarkus-version/SKILL.md => ~/.agents/skills/bump-quarkus-version/SKILL.md. Is it what you expect ? How can we determine if the url points to a text/raw file ? @xstefank

Remark: A SKILL contains not only instructions part of the main SKILL md file but most probably references, scripts, etc which are defined under separate sub-folders. What we call a SKILL is finally something like

Screenshot 2026-06-02 at 09 08 04

… the confusion around envVar

Signed-off-by: Charles Moulliard <cmoulliard@ibm.com>
… resolved

Signed-off-by: Charles Moulliard <cmoulliard@ibm.com>
Signed-off-by: Charles Moulliard <cmoulliard@ibm.com>
@cmoulliard
Copy link
Copy Markdown
Member Author

We can for sure support one raw SKILL.md file and use as folder name the last string of the url: https://my.company/ai/skills/bump-quarkus-version/SKILL.md => ~/.agents/skills/bump-quarkus-version/SKILL.md. Is it what you expect ? How can we determine if the url points to a text/raw file ? @xstefank

I added this change: 9271fbd

10:26:41,696 INFO  [GitUtil] Downloading skill file from https://raw.githubusercontent.com/snowdrop/acp-java-client/refs/heads/main/client/skills/dummy/SKILL.md                                                 
10:26:41,718 INFO  [GitUtil] Skill file saved to: /Users/cmoullia/.agents/skills/dummy/SKILL.md  

@xstefank

Signed-off-by: Charles Moulliard <cmoulliard@ibm.com>
…as the error is related to the error code !

Signed-off-by: Charles Moulliard <cmoulliard@ibm.com>
@cmoulliard cmoulliard requested review from aureamunoz and xstefank June 2, 2026 12:03
@cmoulliard cmoulliard merged commit 2de3ca1 into main Jun 2, 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.

3 participants