Agents
An Agent is the fundamental unit of work in FaynOS — a self-contained module that receives input, executes using its engine and tools, and returns output entirely on your local machine.
Engine types
| Type | Description | Use when |
|---|---|---|
JS | JavaScript module in the FaynOS sandbox | Custom logic, tool orchestration |
PROMPT | Plain-text prompt template | Simple LLM tasks, no custom code |
HUMAN | Human-in-the-loop pause step | Approval gates, manual review |
Capability profiles
The capability_profile is enforced at the kernel level — it is not advisory.
| Profile | Allowed | Blocked |
|---|---|---|
RESTRICTED | Pure computation only | All network, filesystem, Vault |
STANDARD | Vault reads, approved filesystem paths | Arbitrary network, raw filesystem write |
ELEVATED | Full Vault, declared network endpoints, sandboxed filesystem | Raw process spawning, OS-level calls |
Store policy: only REVIEWED and VERIFIED listings may use ELEVATED profile.
Sandbox globals
JS agents run in a V8 isolate. Available APIs:
faynos.vault.get(name) // read secret by name
faynos.llm.run(prompt, opts) // local LLM call
faynos.http.fetch(url, opts) // outbound HTTP (ELEVATED only)
faynos.log(message) // write to run log Math, JSON, Date, crypto are available. process, require, eval are not.
Parameters
"parameters": [
{ "name": "text", "type": "string", "required": true },
{ "name": "max_len", "type": "integer", "required": false, "default": 500 }
] Runs and reproducibility
Every execution is a Run — recorded in full with inputs, outputs, timing, and agent version. Runs can be replayed and diffed between versions.