Agent protocol

Read how an external agent connects to your workspace, follows the documentation method and submits changes for review.

Give your agent this address: https://fileaify.com/agent

The technical protocol below is maintained in English. This page displays the same source as the raw endpoint used by agents.

Connect a web agent

In your tool’s custom connectors, enter Fileaify and this URL:

https://fileaify.com/mcp

OAuth opens Fileaify to select your workspace, projects, permissions and duration. No secret key to copy. Connecting grants no secret access.

Claude: custom connector with automatic OAuth registration or published identity. ChatGPT: OAuth MCP connector, subject to the features available on your account.

Fileaify agent API v2

Fileaify is a shared project workspace combining published documentation, a versioned writing method, service references, optional secrets and explicit agent permissions. It supports both fresh conversations in the same tool and freedom to choose another agent tool, for a solo developer or a team. Evaluating Fileaify needs no login, pairing or private-project access. Public explanations: FAQ, plans, security. For private work, the minimal path is: connect with human approval, read the project method and relevant documents, work in existing tools, then submit useful updates. Remote MCP connector: https://fileaify.com/mcp with OAuth. The browser consent selects workspace, projects, permissions and duration. Direct HTTP agent: the device pairing and REST API below remain available to tools supporting HTTPS, JSON and private Bearer headers. Both paths use the same server-enforced permissions, publication policy and human access requests. Connecting grants no secret access. External-agent documentary contributions work on Free; the optional internal assistant is separate. Repository upload and a custom user-written API client are not required. Only published information is available as durable project knowledge; undocumented decisions are not captured automatically.

Executor (act on systems without holding keys): the account has one dedicated executor VM, shared by the owner's workspaces; every execution (ssh-run, executor/run, reading a job) needs the project permission executor.run. Through it you can run SSH commands on the servers listed in the project's ## Hosts table (ssh-run, with the vault key used server-side, never handed to you) and run your own commands in a disposable sandbox with a persistent /work folder (executor/run). If it is off, ask a human to start it with an access request executor.start. See the Executor section below.

Connect to the invoking user's workspace

Use the origin from which you fetched this guide for every relative endpoint below. Send JSON with Content-Type: application/json. Use HTTPS in production. No Cognito account, password, AWS key or guessed organization identifier is needed.

  1. POST /api/agent/pair with {"name":"Your agent name","reason":"The user's concrete task"}.

  2. Keep device_code private. Show the invoking user verification_uri_complete and user_code. Ask them to verify that the code and task match, sign in, select their organization, then authorize the intended projects (several, or all projects of the workspace including those created later), capabilities and duration. When the code is already in the link, the user lands directly on this second step and can go back to enter another code. Afterwards the page only confirms that the tab can be closed. Opening the link alone grants nothing. Only an organization owner or administrator can approve. The code expires after expires_in seconds (600).

  3. Poll POST /api/agent/token with {"device_code":"the private code"} no faster than the returned interval (5 seconds). HTTP 202 means pending. HTTP 429 means slow down; increase the interval. A denial (403) or expiration (400) ends this attempt. Do not create repeated requests to bypass a refusal.

  4. HTTP 200 returns access_token, token_type, agent_id, organization_id and expires_at (Unix UTC). The token is delivered ONCE, then reused for API calls until it expires, is suspended or is revoked. Keep it in the invoking tool's private credential storage; never put it in a URL, transcript, document or log. If delivery is lost, ask the user to revoke the orphaned agent and start a new pairing. Permission modes: suggest that the user run the pairing and the first project calls in their client's manual approval mode (ask before each action) or accept mode, then continue in Auto mode if they prefer. Bypass / ignore permissions also works, but it removes the client's protection against mistakes and unwanted actions: advise it only in a disposable environment.

  5. Send Authorization: Bearer <access_token> on authenticated API calls. The token is bound to the approved organization; permissions select individual projects. It does not inherit the approver's roles or groups. A user with several organizations can pair separate agents in each. No organization header can broaden a token's scope.

An administrator can also create an expiring agent token in Users & access and then assign project grants. These tokens initially have no project rights. Never use the user's browser session for API work.

Critical rules

These rules are quoted from the protocol; the pages below hold the context for each.

Minimal working routine

  1. Identify the intended project. Reuse an existing authorized token or perform the pairing below. Ask for clarification when the project is ambiguous; do not guess a private identifier.
  2. Read the current contract and relevant documents before operational work. Repository instructions still apply to repository work. Do not create a second copy of documentation merely because a repository exists. If existing instructions or duplicate documents disagree, identify the conflict and ask which source is authoritative rather than silently overwriting either.
  3. Work in the user's existing tools. Request extra permissions only for a concrete resource needed by that task. Project read/write permission does not authorize secret use or export.
  4. Before reporting completion, compare the work actually performed with the document update triggers. Submit necessary factual updates with rationale and evidence; do not submit empty changes merely to satisfy this routine.
  5. Report whether contributions were published or remain pending. Never describe an unsubmitted or pending change as saved project knowledge available to the next agent. When handing over to a fresh session or another tool, identify the project and any unresolved or pending items; do not pass secret values in the handover message.

The user may keep a short link to this protocol and the intended project in their tool or repository instructions, such as AGENTS.md or CLAUDE.md, to establish this routine across sessions. Keep the detailed method in Fileaify; never store tokens or secret values in instruction files. Fileaify does not observe external terminals or unsubmitted conversations. Permissions and revision checks are deterministic, but neither those checks nor this routine guarantee semantic accuracy or agent compliance.

Where to read more

Each page is a plain-text Markdown document with the same wording as the full protocol. Fetch only what the task needs.

URL Expected content Read it when
/agent/connect Roles, operating model and minimum requirements, repository instructions, plan capacity, subscription restrictions, owner data portability. you need to understand what Fileaify is for, what a plan allows, or how it relates to the repository.
/agent/documents Discovering a project and its method, attention points, submitting documentation, document lifecycle and retries, shared service profiles. you read project documents, propose changes, archive or restore a document, or document a service.
/agent/access Requesting access, vault references, missing bindings, using a credential without exporting it. you need a permission, a key, or to know which keys exist for a project.
/agent/executor The workspace executor: SSH destinations, sandbox, persistent /work, direct SSH access with vault references, starting it. you must act on a server or run commands without ever holding a key.
/agent/mcp The remote MCP connector, OAuth consent, bounded reads and exact edits. your client speaks MCP.
/agent/rest Operation-to-endpoint table (REST and MCP tool names side by side). you call HTTP directly and need the exact endpoint of an operation.
/agent/errors Failure handling, error codes and what to do for each, termination. a request failed, a token stopped working, or you must decide whether to retry.

Everything in one document

/agent/full is the whole protocol in a single document: every page above, in the original order. Reading it all at once is a legitimate preference when your context allows it; otherwise navigate the pages above as you need them.