Lifecycle Spec¶
File¶
AgentSeek discovers the lifecycle spec from the current directory upward:
.agentseek/lifecycle.toml
Other project files are outside lifecycle discovery.
Shape¶
version = 1
template = "bub/default"
name = "My Bub Agent"
env_file = ".env"
[tools]
required = ["uv", "node", "npm"]
[paths]
required = ["frontend/package.json", "frontend/node_modules"]
[env.BUB_MODEL]
required = true
default = "openai:gpt-4o-mini"
[env.BUB_API_KEY]
required = true
aliases = ["BUB_OPENAI_API_KEY"]
[services.app]
url = "http://127.0.0.1:5173"
[processes.frontend]
command = ["npm", "run", "dev"]
cwd = "frontend"
[checks.frontend]
type = "http"
target = "http://127.0.0.1:5173"
timeout = 2
attempts = 3
[tasks.frontend]
description = "Install frontend dependencies."
command = ["npm", "install", "--prefix", "frontend"]
Sections¶
| Section | Purpose |
|---|---|
env_file |
Optional project-local env file used only for declared environment checks. It is not injected into child processes. |
tools |
Required executables used by the project. |
paths |
Required local files or directories. |
env.<name> |
Environment variables AgentSeek should check. Defaults are lower priority than env_file and shell variables. |
services.<name> |
Public local service endpoints shown by agentseek info. |
processes.<name> |
Long-running commands started by agentseek dev. |
checks.<name> |
Live HTTP readiness checks used by agentseek doctor --live. 2xx and 3xx responses are successful. |
tasks.<name> |
One-shot tasks run by agentseek task <name>. cwd is project-relative and must exist. |
Environment Checks¶
AgentSeek checks environment requirements from lifecycle defaults, the optional
env_file, and the current process environment:
lifecycle default < env_file < shell environment
Only keys declared under [env.<name>] and their aliases are read from
env_file. Templates do not need to declare every runtime variable a project
may use. AgentSeek does not pass the env file or lifecycle defaults to child
processes.
First Phase Scope¶
Version 1 supports required tools, required paths, project environment requirements, HTTP live checks, long-running processes, and one-shot tasks. It does not support optional tool/path checks, TCP checks, process env overrides, multiple env files, or env interpolation.
Public Commands¶
| Command | Behavior |
|---|---|
agentseek info [--verbose] |
Prints project facts from the lifecycle spec. |
agentseek doctor [--live] [--strict] |
Checks tools, paths, env, and optional live endpoints. |
agentseek dev [--dry-run] [--skip-check] |
Prints or starts declared development processes. --skip-check skips only the preliminary strict doctor pass. |
agentseek task --list |
Lists tasks declared under tasks. |
agentseek task <name> |
Runs a declared one-shot task. |
Errors¶
| Condition | Result |
|---|---|
Missing .agentseek/lifecycle.toml |
Exit code 2. |
| Unsupported lifecycle spec version | Exit code 2. |
| Invalid lifecycle spec | Exit code 2. |