Skip to content

Resolve bare Actor names in build-actor, call-actor, and the other Actor tools #1614

Description

@DaveHanns

What happens

The versions tools (#1453, #1454) take a bare Actor name such as my-actor and resolve it to the Actor of that name in the caller's account. build-actor, call-actor, fetch-actor-details, get-actor-build-list, and get-actor-run-list take only an ID or username/name, so the same name fails there with "Actor 'my-actor' not found."

Local evals of the versions tools (create, fix, and change an Actor, then build and run it) on Haiku 5.5, Sonnet 5.5, and Opus 4.8 hit this in 7 of the 8 tool errors across 15 trials. The agents reused the bare name the versions tools had just accepted, and each recovered on the next call with username/name.

Fix

Resolve a bare name with the shared getResourceByIdOrName (src/utils/apify_resource_id.ts) in every tool that takes an Actor:

  • build-actor, get-actor-build-list, and get-actor-run-list, in feat!: Add create-actor and update-actor-version tools #1453.
  • call-actor and fetch-actor-details, in a separate PR, since they use the shared Actor definition cache and the payment checks, and call-actor can start a paid run. A bare name means the caller's own Actor, never a Store Actor.
  • delete-actor, later.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions