config.yaml:
Managed mode
Managed mode is the portable default. Harnest discovers your resources and builds the selected framework target.A nested LangGraph
Agent cannot consume a discovered child subagents/ folder. Express that topology in the portable root graph.Advanced mode
In advanced mode, you construct a native target and export it throughAgent.advanced(...).
Before moving a project from managed to advanced mode, run the read-only audit:
agent.py; do not run init over the project.
Switch frameworks
Changingspec.framework.name is simple. Validating the behavior is the migration.
1
Establish the current baseline
Preserve the source and run the existing unit tests.
2
Find native dependencies
Inspect
agent.py, native extensions, custom graph nodes, nested SubAgents, sandboxes, eval assets, and active checkpoints.3
Change the framework
Update only
spec.framework.name. Do not add Harnest-owned framework packages to pyproject.toml.4
Test the target
Run
harnest test AGENT_DIR, any authorized smoke tests, and harnest serve AGENT_DIR.Choose a framework
All choices use the same Harnest agent card, sessions, API, events, WebSocket protocol, and playground.
Version compatibility
Harnest installs a tested framework version and records it in the manifest. Upgrade Harnest to adopt a newer version; do not override it inpyproject.toml.