Bring an existing agent into Harnest
Choose the mode that preserves the agent’s current behavior:1
Create a Harnest project beside the existing agent
--framework langgraph for an existing LangGraph agent.2
Move the agent and its dependencies
Move the source into
migrated-agent, then export a managed Agent or Graph, or wrap the existing native target with Agent.advanced(...). Add only agent-owned packages to pyproject.toml.3
Test through the harness
Upgrade an older Harnest project
1
Preview the migration
2
Apply the reviewed migration
OutputPolicy forms. It also migrates retired
same-process Runtime Plugin packages to Harnest Extensions:The upgrade declares each existing Runtime Plugin
tools/, mcp/,
skills/, and subagents/ directory under the matching contributes key.
It moves the old package extensions/ hook directory to lifecycle/ and
declares that path under contributes.lifecycle. New Harnest Extensions do
not infer content from directory names.Agent Plugin folders containing plugin.json stay under plugins/; they
are declarative packages and are not part of this executable-code migration.
Harnest no longer infers manifestless plugins/<name>/{mcp,skills} packages;
install or rebuild those packages against the Agent Plugins standard before
compiling the upgraded project.3
Test the upgraded project
.harnest/upgrade-backups/. It stops when a change needs your judgment.
Switch between ADK and LangGraph
For a managed agent, changespec.framework.name in config.yaml: