Pilot Profile

build_pilot_profile creates an explicit component set for controlled release candidate pilots. It does not change AgentSession defaults and it is not exported from the package root; import it from the pilot submodule.

from techrevati.runtime import AgentSession, PermissionMode
from techrevati.runtime.pilot import build_pilot_profile

profile = build_pilot_profile(
    role="writer",
    allowed_tools=("lookup_order", "summarize_case"),
    budget_usd=3.00,
    permission_mode=PermissionMode.WORKSPACE_WRITE,
)

agent = AgentSession(
    role="writer",
    phase="pilot",
    **profile.agent_session_kwargs(),
)

The profile enables:

The base PermissionPolicy keeps its compatibility default for unknown roles unless callers opt into default_allow_unknown_roles=False. The pilot helper sets that option for you, so only the configured role can reach the allowed tools.

Use tool_deny_patterns= for temporary pre-call tool-name blocks during a pilot. Keep the allowed-tool list small and review every tool body separately; the runtime authorizes tool names, but it does not sandbox tool code.

Each call to profile.agent_session_kwargs() returns a fresh governance plane so session counters do not leak across pilot runs.