Tenant Harness
The Tenant Harness is the environment that enables the FDE to operate autonomously and independently for each tenant. Each tenant’s skills, memory, rules, and configuration are fully isolated, and the FDE operates within the tenant’s specific context.
Isolation for Autonomous Operation
Section titled “Isolation for Autonomous Operation”When FDEs are simultaneously deployed to multiple client organizations, tenant isolation is a prerequisite for safe autonomous operation.
Skills auto-generated from Acme’s business patterns are never executed for Beta Inc. Conversely, Beta Inc’s memory never contaminates Acme’s reports.
app/orgs/ acme/ # Acme's autonomous operating environment skills/ # Skills auto-generated from observations rules/ # Tenant-specific behavioral constraints memory/ # Knowledge auto-accumulated from workflow observations config/ # Authentication and environment settings scheduled-tasks.yaml # Scheduled task definitions beta-inc/ # Beta Inc's autonomous operating environment skills/ rules/ memory/ config/ scheduled-tasks.yamlAutomatic Harness Construction
Section titled “Automatic Harness Construction”The initial harness structure is created by a 0ai engineer, but the contents are autonomously populated by the FDE.
skills/ — Auto-Generated Skills
Section titled “skills/ — Auto-Generated Skills”When the FDE observes workflows and detects recurring patterns, it auto-generates skills and stores them in this directory.
app/orgs/acme/skills/ weekly-kpi-report/ # Auto-generated from observations SKILL.md scripts/ support-triage/ # Auto-generated from observations SKILL.mdPMs do not need to write skills manually. The FDE generates skills and PMs review and approve them.
memory/ — Auto-Accumulated Business Knowledge
Section titled “memory/ — Auto-Accumulated Business Knowledge”The FDE automatically memorizes business knowledge from Slack conversations, meeting transcripts, and shared documents.
app/orgs/acme/memory/ INDEX.md # Auto-generated memory index company-overview.md # Organization structure, key products kpi-definitions.md # KPI definitions and review cadence stakeholders.md # Team members and rolesMemory is automatically added and updated, with periodic organization (Memory Distill) also running automatically.
rules/ — Tenant-Specific Behavioral Constraints
Section titled “rules/ — Tenant-Specific Behavioral Constraints”Defines behavioral rules specific to the tenant: expression guidelines, prohibited items, escalation conditions, and more.
Initial rules are set by the 0ai engineer based on discussions with the PM. The FDE may later propose rule additions based on learned feedback.
config/ — Authentication and Environment Settings
Section titled “config/ — Authentication and Environment Settings”Manages Slack workspace IDs, API authentication, service connection information, and more. Set by the 0ai engineer — PMs do not need to edit directly.
Shared vs. Tenant-Specific
Section titled “Shared vs. Tenant-Specific”app/ _shared/ # Skills and rules shared across all tenants skills/ rules/ orgs/ acme/ # Acme-specific skills and rules beta-inc/ # Beta Inc-specific skills and rules- Shared: Generic capabilities like browser automation, data analysis, image generation
- Tenant-specific: Tenant-specific KPI definitions, report formats, notification rules
The FDE combines both when executing tasks. It layers tenant-specific context on top of shared capabilities to produce output optimized for each organization.
Three Levels of Isolation
Section titled “Three Levels of Isolation”Tenant harness independence is guaranteed at three levels:
| Level | Content | Effect |
|---|---|---|
| File isolation | Independent directories per tenant | Data physically cannot mix |
| Config isolation | Slack channels, env, and auth are per-tenant | Notifications and auth never cross |
| Memory isolation | Tenant memory is not accessible to other tenants | Business knowledge cannot leak |
The Harness from the PM’s Perspective
Section titled “The Harness from the PM’s Perspective”PMs do not need to be aware of harness internals. PM involvement occurs in these situations:
- Skill approval: Reviewing the content and quality of auto-generated skills
- Memory review: Periodically verifying that learned business knowledge is accurate
- Rule adjustments: Requesting changes to expression rules or escalation conditions via the 0ai engineer
- Scheduled task approval: Approving proposed scheduled task additions
All of these are completed through Slack notifications and responses. No direct file editing required.
Important Notes
Section titled “Important Notes”- Do not mix information from other tenants into a tenant harness
- Credentials (API keys, tokens) are stored in the harness’s
config/and are never written directly into memory or documents - Harness change history is managed via git, making all changes traceable