Skip to content

feat(skills): make run_skill_script execution timeout configurable #272

Description

@initializ-mk

Context

Deferred non-blocking follow-up from the #257 review (commit 851b0bc, item #3). Tracking it here so it isn't lost in the commit message.

run_skill_script (added in #257 / #251, forge-cli/tools/run_skill_script.go) executes a skill-relative script (sh/py/js/ts) with a hardcoded execution timeout. Long-running skill steps (installs, builds, data pulls) can legitimately exceed it, and different skills have different needs.

Proposal

Make the timeout configurable, consistent with how cli_execute already takes a timeout hint:

  • Per-skill / per-tool config (align with cli_execute's TimeoutSeconds + the skill-requirements TimeoutHint derivation already in runner.go).
  • Sensible default retained when unset.
  • Cap/validation so a skill can't set an unbounded timeout.

Acceptance

  • run_skill_script timeout is operator/skill configurable, not hardcoded
  • Default preserved for skills that don't set it
  • Reuses the existing cli_execute timeout-hint plumbing where practical

Depends on #257 merging first (the code lives on that branch). Related: #251, #257

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestforge-cliAffects the forge-cli command-line tool (init, run, build, mcp commands)toolsAffects builtin or adapter tools (cli_execute, http_request, browser, etc.)

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions