tool-call-machine
v0.1.0
Published
Pure, framework-agnostic machine + app-control operations (open apps, files, processes, AppleScript). Usable in any project.
Maintainers
Readme
tool-call-machine
Pure, framework-agnostic machine + app-control operations — open apps, list/delete files, manage processes, and (macOS) run AppleScript / read app state. No AI-framework dependency, so it's usable in any project (CLIs, cron jobs, agents).
One library covers mac / windows / linux via runtime dispatch; each adapter advertises only the
ops it actually supports (capabilities()). macOS is implemented today; Windows/Linux are
degrade-don't-die stubs.
import { makeMachine, MachineOp } from 'tool-call-machine'
const machine = makeMachine()
if (machine.capabilities().has(MachineOp.OPEN_APP)) {
await machine.openApp('Spotify')
}The Timmy tool-call binding (risk gating, the runAppleScript/listRunningApps tools) lives in the
separate timmy-plugin-machine — this package stays a plain library.
Develop
npm install
npm test # vitest
npm run build # tsc → dist/