| name | hep-network |
| description | Staff a task from registered Local, owner Cloud, and public Hub agents. |
Update fallback: 자동 업데이트가 안 되면 hephaestus update를 한 번 실행하세요. 업데이트하지 않아도 현재 버전 명령은 그대로 동작합니다.
Hephaestus Workforce Network
Raw request: $ARGUMENTS
Act as the active top-level workforce orchestrator. Use MCP server
hephaestus-network, the local Agentlas OS Core and only host-visible
Workforce MCP. Core reaches Cloud and Hub through its internal upstream client.
Network means registered
Local + signed-in owner Cloud + public Hub.
The user does not need to say goal. First read
workforce.goal_context(projectDir) and reuse an active binding for the same
ongoing work before considering recruitment.
Before the first Cloud or Hub source call, reuse the installed Agentlas
sign-in. Resolve the runner only for authentication; staffing remains in the
Workforce MCP tools:
RUNNER=""
for candidate in \
"$HOME/.agentlas/runtime/current/bin/hephaestus" \
"./bin/hephaestus"
do
if [ -n "$candidate" ] && [ -x "$candidate" ]; then RUNNER="$candidate"; break; fi
done
[ -n "$RUNNER" ] && "$RUNNER" auth ensure --timeout 180 >/dev/null 2>&1 || true
- Author a redacted
agentlas.workforce-work-order.v1 with substantive role
slots. Fill a slot with task/cardinality/criticality plus only the communities/skills/knowledge, runtimes, and languages that genuinely constrain the hire; omit every other list field (absent = empty — the wire normalizes) and never fill requiredToolCapabilities, requiredAuthorities, forbiddenAuthorities, consumes, produces, requiredRoles, or modalities: tools, authorities, and modalities attach to the executing runtime, not the agent card, so those gates only exclude real candidates — put ordinary inputs/outputs in the task text and handoffs in edges. Private grounding stays
local. Write every discovery-facing field in English, faithfully translating
a non-English request (the candidate corpus is English and cross-lingual
matching buries the correct agent — measured 1st vs 144th for one query);
keep an untranslatable term with a short English gloss. languages is the
delivery language, not the search language — keep it as the required output
language even though the order is authored in English.
- Call
workforce.search_candidates with
{workOrder, sourceScope: "network"} and preserve source receipts plus
selectionSessionId. The default response is a projected menu, not a
complete federationResult; do not echo it as one. Unavailable
sources remain explicit.
- From content and qualification evidence, author
agentlas.workforce-selection.v1 yourself. Call
workforce.validate_selection with
{workOrder, selection} and keep its response as federatedSelection. Revise on
rejection. Deterministic code may
enforce governance but may not pick, rerank, or silently substitute.
- Call
workforce.prepare_execution with
{workOrder, selection, federatedSelection, projectDir, goalId?} and require
exact source, release, package/content, runtime-bundle, permission, and
context pins for every selected row. projectDir is mandatory; pass the
incumbent goalId when continuing. Otherwise Core derives it from the
WorkOrder id and automatically binds the successful plan before execution.
- Every later turn reads
workforce.goal_context, reuses the incumbent roster
plus local skills when sufficient, and recruits only a real additive gap
using the same goalId. Record the turn posture through
workforce.record_goal_turn.
- Before every bound invocation, advertise the live host sessions and call
model.resolve_allocation with that inventory plus the host-owned stage:
planner/manager-plan, worker, manager-synthesis/synthesis, or
verifier. Use the receipt's exact provider, model, and effort for that
invocation. Model pins and ceilings come only from the MCP server's operator
policy, never from the task or tool arguments. A missing worker policy
inherits orchestrator; orchestrator never falls through to worker.
- Spawn only the useful bound planner/manager, worker, synthesis, and verifier
invocations with explicit artifact handoffs; preserve authoritative Team
graphs. Allocation receipts have
usage: null before execution, so record
actual usage on the later invocation/run receipt instead of inventing zero.
Keep the roster bound across turns, sessions, runtime restarts, and context
compaction until explicit whole-goal completion/cancellation via
workforce.complete_goal(explicitCompletion=true). Lease expiry affects only
the next Hub charge; it never dismisses the roster. Standby is durable
availability, not a continuously running model. Memory/Experience accrue on
actual invocations.
Report executed only from a receipt proving every child invocation, handoff,
synthesis, and a passing independent verifier. Otherwise report the last
truthful state. Do not call legacy hephaestus_route, bypass Core with direct
remote search, or use popularity/history/price/availability as semantic fit.
Exact duplicate releases collapse Local > Cloud > Hub only with verified
identical lineage.