mudler / mudler/LocalAGI

How should Skill scripts be executed? Can a Skill directly invoke Bash or external APIs?

Open
#471 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
2k
Forks
291
Avg merge
30m
Merged PRs (30d)
3

Description

Hi~,

I am trying to understand the intended runtime behavior of LocalAGI Skills.

I created a custom Skill with this structure:

text
skills/axxx-api/
SKILL.md
scripts/
axxx_chat.py

The script calls an external OpenAI-compatible API:

POST https://www.xxxx.com:3000/api/v1/chat/completions
Authorization: Bearer <api_key>

I enabled Skills on the agent and asked it to use this Skill. The agent can discover/read the Skill, but it cannot
actually execute the script or call the API. It says no HTTP/Shell execution tool is available.

I also noticed the Skill editor has an Allowed tools (optional) field, but from reading the code it looks like
allowed-tools is only stored in Skill metadata and returned to the UI. I could not find where it grants execution
capability or makes scripts/ callable.

I want to package an API integration as a Skill:

  • SKILL.md contains the instructions
  • scripts/ contains the API call implementation
  • the agent uses the Skill
  • the Skill executes the script and returns the API result

Ideally, the user would only need to enable the Skill, without separately configuring an Action.

The Skill is available and readable, but the script is not executed.

The agent can only call the API if I also configure an execution-capable tool such as:

  • Shell Action
  • Webhook Action
  • Custom Action
  • external MCP server

Could you clarify the intended design here?

If Skill scripts are only resources and not executable tools, what is the recommended way to build API-backed Skills
in LocalAGI?

I look forward to your reply.

Some accompanying images provide us with assistance regarding this issue.

Image Image Image Image

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the Skill structure in SKILL.md, scripts/axxx_chat.py, and the Allowed tools field, then compare those with the listed Shell, Webhook, Custom, and external MCP execution options. Done means the intended execution model and recommended approach for API-backed Skills are clearly specified.

Written by the indexing model from the issue text.

Assessment

Tech stack
bash, python
Domain
backend-api-design, documentation
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.