Skip to main content

Team Manifests

Team Manifests are the foundation of composable AI teams in MeetLoyd. Think of them as "npm for AI agents" -- a declarative way to define, version, and deploy complete AI team configurations.

What Manifests Do

A Team Manifest defines everything about a team in a single, portable file:

ComponentPurpose
AgentsWhich agents make up the team, with their models and roles
SkillsDomain expertise packages attached to agents
AvatarsVideo/voice representations from built-in or external providers
OrchestrationHow agents communicate, route tasks, and escalate
VersioningLock files ensure reproducible, auditable deployments
CustomizationsOverride configurations without forking the original

Why Use Manifests?

Think Infrastructure as Code

Manifests bring the same benefits as Terraform or Kubernetes YAML to your AI workforce: version control, reproducibility, and declarative configuration.

  • Reproducible deployments -- the same manifest produces the same team every time
  • Audit trail -- lock files record exactly which versions are running and when they were deployed
  • Rollback -- return to a previous known-good state instantly
  • Composability -- mix Store components, local agents, and external providers in one file

Component References

Components are referenced using URIs that specify their source:

Reference TypePatternUse Case
Storestore://agents/sdr-agent@^1.0.0Published components from the MeetLoyd Store
Locallocal://agents/my-custom-agentCustom components in your tenant
Externalexternal://heygen/avatar-emmaThird-party avatar/voice providers
Catalogcatalog://sales-teamPre-built team templates from the MeetLoyd catalog

Version Specifiers

SpecifierExampleBehavior
Exact1.2.3Only this version (no updates)
Caret^1.0.0Compatible with 1.x.x (minor and patch updates)
Tilde~2.1.0Patch updates only (2.1.x)

Team Catalog

MeetLoyd ships with 23 pre-built team manifests covering common enterprise use cases. These are the single source of truth for all team templates, Store listings, and preset deployments.

TeamCategoryDescription
Sales TeamsalesComplete AI sales operations
Support TeamsupportCustomer support escalation
C-Suite TeamexecutiveExecutive leadership team
DevOps TeamengineeringInfrastructure and deployment
Marketing TeammarketingContent and campaign management
Finance TeamfinanceFinancial operations and reporting
Legal TeamlegalLegal review and compliance
Product TeamproductProduct management and roadmap
Strategy TeamstrategyStrategic planning and analysis
HR TeamhrHuman resources operations
Customer Success Teamcustomer-successCustomer retention and growth
Healthcare TeamhealthcareHealthcare operations (HIPAA)
Insurance TeaminsuranceInsurance operations
Real Estate Teamreal-estateProperty management and sales
VC/PE TeamfinanceVenture capital and private equity
...and 8 more

Model Aliases

Instead of hardcoding specific model IDs, you can use human-friendly aliases that resolve automatically at deploy-time:

AliasResolves To
claude-opus-latestclaude-opus-4-6
claude-sonnet-latestclaude-sonnet-4-6
claude-haiku-latestclaude-haiku-4-5-20251001
gpt-latestgpt-4o
gpt-mini-latestgpt-4o-mini
gemini-latestgemini-2.5-pro
gemini-flash-latestgemini-2.5-flash
mistral-latestmistral-large-latest
deepseek-latestdeepseek-r1-distill-70b
glm-latestglm-5
qwen-coder-latestqwen3-coder-30b

Aliases are resolved both at deploy-time and as a runtime safety net, so agents always route to the correct LLM provider.

Agent Authorization in Manifests

You can declare per-agent resource permissions directly in your manifest. These are provisioned as OpenFGA authorization tuples at deploy-time.

Common resource types:

TypeExampleDescription
crm_object_typehubspot/contactsCRM object access
git_repositorygithub/acme/websiteGit repo permissions
drive_foldershared/reportsDrive folder access
email_domainacme.comEmail sending scope

Common relations: reader, writer, editor, committer, admin.

Non-Blocking

Authorization provisioning is non-blocking. If OpenFGA is not configured in your environment, deployment continues with a warning.

Agent Identity (SPIFFE)

Agents automatically receive a SPIFFE identity at deploy-time, following the pattern spiffe://meetloyd.com/tenant/{tenantId}/agent/{agentId}. This enables cross-service authentication, token exchange, and trust verification by external services.

You can optionally configure SVID parameters such as custom audiences and TTL in the manifest's identity section.

Catalog Validation

All catalog manifests are validated against a strict schema when loaded. Validation is informational -- errors are logged as warnings but never prevent the catalog from loading. Validated fields include agent definitions, orchestration config, interaction rules, authorization grants, and identity config.

Development Hot-Reload

When developing locally, the catalog loader watches for changes and automatically refreshes the cache. Edit a YAML file and your next API request uses the updated version -- no restart needed. Hot-reload is debounced (300ms window) and automatically disabled in production.

Manifest Structure

A manifest is a YAML or JSON file with these top-level sections:

SectionRequiredDescription
nameYesHuman-readable team name
slugYesURL-friendly identifier
versionYesSemantic version
descriptionNoWhat this team does
components.agentsYesAgent definitions with refs, versions, and overrides
components.skillsNoSkill packages to attach
components.avatarsNoAvatar/voice providers
orchestrationNoRouting mode, intent routing, fallback behavior

Orchestration Modes

ModeDescription
HierarchicalEntry agent routes to specialists based on intent; supports fallback
ParallelMultiple agents process concurrently with configurable aggregation
SequentialAgents execute one after another in a defined order
Round RobinIncoming requests distributed evenly across agents
Smart RoutingLLM-scored dynamic routing to the best-fit agent

Customizations

Override component behavior without forking the original:

  • Context prompt templates -- inject tenant-specific variables like industry or region
  • Memory configuration -- adjust context token limits per agent
  • Skill overrides -- swap one skill for another (e.g., replace Salesforce CRM with HubSpot CRM)

Lock Files

When you deploy a manifest, MeetLoyd generates a lock file that records exact resolved versions, timestamps, and checksums. Lock files ensure reproducibility, provide an audit trail, and enable rollback to previous known-good states.

Deploying a Manifest

From the Dashboard

  1. Navigate to Teams and click Deploy from Manifest
  2. Upload or paste your manifest file
  3. Review the resolved versions and any warnings
  4. Click Deploy

From a Catalog Template

  1. Go to Teams and click New Team
  2. Choose a template from the catalog
  3. Customize settings if needed
  4. Click Deploy

Version Management

Checking for updates: The dashboard shows a badge when newer versions of your components are available.

Upgrading components: Select which components to upgrade (or upgrade all), with an option to dry-run first.

Locking versions: Mark individual components as locked: true to prevent auto-updates.

Rolling back: Return any component to a previous version via the deployment detail view.

Best Practices

  1. Use Semantic Versioning -- 1.0.0 to 1.0.1 for bug fixes, 1.1.0 for new features, 2.0.0 for breaking changes
  2. Lock production deployments -- use exact versions or set locked: true for stability
  3. Test in staging first -- deploy to a staging team before production
  4. Use version ranges wisely -- ^1.0.0 for development, 1.2.3 (exact) for production, ~1.2.0 for CI/CD
  5. Document breaking changes -- include changelogs with your version updates

See Also