Skip to main content
Use this guide when Codex, Claude Code, Cursor, or another coding agent is implementing a Fentaris application. It complements the installable Fentaris agent skills with repository-level rules and verification steps.

Read first

  1. Read /llms.txt to find the current documentation pages.
  2. Inspect fentaris.json, package.json, the package-manager lockfile, src/index.ts, .fentaris/secrets.manifest.json, and existing tests.
  3. Check the installed @fentaris/core and CLI versions before using version-sensitive APIs.
  4. Prefer CLI help and current documentation over compiled package internals.
For a new project, use fentaris init with explicit options. For an existing project, preserve its API style and make the smallest coherent change.

API decision table

Safe implementation workflow

1. Resolve the runtime boundary

Keep host, port, MCP path, entrypoint, package manager, and auth directory in fentaris.json. Keep the host on 127.0.0.1 unless the user explicitly chooses a protected shared boundary. OAuth 2.1 and fentaris deploy are not currently available. Use Fentaris API keys, trusted identity headers behind an authenticated gateway, or an existing auth boundary. Do not invent deploy commands.

2. Declare capabilities with stable names

Server and local namespace names become client-visible tool prefixes. Changing github to source-control, for example, changes github__search_issues to source-control__search_issues. Register an upstream before referencing it in policy:

3. Fail closed

Use explicit allow-list policies for shared projects. Policy.allowAll() is a local-development shortcut and must be labeled as such. Test both sides of each policy:
  • an allowed subject can discover and call the capability;
  • a denied subject cannot discover it;
  • a direct denied call fails before the upstream or local handler runs.

4. Leave secret material to the user

Agents may add credential references and an updated manifest, but must not invent or print real secret values.
For client API keys:
The handoff should say where the user must provide values and what must not be committed.

5. Validate in layers

Run the narrowest checks first:
Start the proxy, then probe the actual MCP endpoint:
Finally use MCP Inspector, MCPJam, or a session-aware curl flow to verify tools/list and representative tools/call requests for both allowed and denied users.

Required handoff

An agent completing a Fentaris change should report:
  • files and namespaces changed;
  • endpoint and runtime assumptions;
  • auth, users, groups, policy, secrets, and logging added;
  • exact validation commands and their results;
  • remaining secret provisioning steps;
  • one expected allowed result and one expected denied result;
  • current limitations that materially affect the setup.
See the complete team-governed proxy for a project and test flow that follow these rules.