FPK Format
An FPK (FaynOS Package) is a JSON file containing the agent's definition, engine code, and metadata. It may be plain JSON or gzip-compressed JSON. The file extension is .fpk.
Complete schema
{
"fpk_version": "1", // required
"entity_type": "AGENT", // required: AGENT | TEAM | PROCESS
"handle": "my-agent", // required: ^[a-z0-9_-]{2,64}$
"name": "My Agent", // required
"version": "1.0.0", // required: semver
"engine_type": "JS", // required: JS | PROMPT | HUMAN
"capability_profile": "STANDARD", // RESTRICTED | STANDARD | ELEVATED
"capability_tags": ["vault:read"], // array of strings, max 20
"category": "productivity", // see categories list
"description": "What it does", // shown on store listing
"changelog": "v1.0.0 ...", // version history
"min_faynos_version": "0.1.0", // minimum app version required
// JS agent — one of engine_js or engine_prompt required
"engine_js": "export default { async run(input, ctx) { ... } }",
"engine_checksum": "sha256hex...", // SHA-256 of engine_js
// PROMPT agent
"engine_prompt": "Summarise: {{text}}",
// Parameters schema
"parameters": [
{
"name": "text",
"type": "string", // string | integer | number | boolean | array | object
"required": true,
"default": null
}
],
// Vault keys required (user must have these in their Vault)
"vault_keys": ["OPENAI_API_KEY"],
// Team-only: member roster
"members": [
{ "handle": "agent-a", "role": "search" }
],
// Process-only: step graph
"steps": [ ... ]
} Field reference
| Field | Required | Type | Notes |
|---|---|---|---|
fpk_version | required | string | Always "1" for now |
entity_type | required | string | AGENT, TEAM, or PROCESS |
handle | required | string | Lowercase, 2–64 chars, [a-z0-9_-] |
name | required | string | Display name, max 128 chars |
version | required | string | Semver, e.g. 1.0.0 |
engine_type | required | string | JS, PROMPT, or HUMAN |
engine_js | if JS | string | ES module source, max 512 KB |
engine_checksum | recommended | string | SHA-256 hex of engine_js |
capability_profile | optional | string | Default: STANDARD |
capability_tags | optional | string[] | Max 20 tags |
vault_keys | optional | string[] | Secret names agent will access |
parameters | optional | object[] | Input schema, max 50 parameters |
Categories
productivity · coding · research · writing · data · communication · automation · finance · creative · utilities