agently-stage
Use for Agently-Stage process-local task lifetime and sync/async interop: Stage scopes and handles, settlement/cancellation, StageCallBridge and StageStream, Tunnel replay channels, or local EventEmitter listeners. Choose this even inside TriggerFlow when a provider-owned sync wrapper bridges an async SDK; use TriggerFlow for application workflow orchestration or persistence.
How do I install this agent skill?
npx skills add https://github.com/agentera/agently-skills --skill agently-stageIs this agent skill safe to install?
- Gen Agent Trust Hubpass
The skill provides instructions and references for using 'agently-stage', a Python library for managing task lifecycles, async/sync bridging, and event emitters. Analysis of the code snippets and configuration revealed no malicious patterns or security risks.
- Socketpass
No alerts
- Snykpass
Risk: LOW · No issues
What does this agent skill do?
Agently Stage
Agently 4.1.4.7+ requires agently-stage>=0.3.8,<0.4.0. Use Stage for
process-local lifetime, call-shape bridging, replay channels, and local listener
dispatch. These APIs are independently useful, while Agently also uses Stage as
a private runtime mechanism.
Read by Need
- Stage scopes/backend selection,
StageHandle, settlement, cancellation, caller-loop task ownership, pressure, idle timeout, and snapshots: task-lifecycle.md. Stage.as_sync/as_async,StageCallBridge,StageStream,Tunnel,EventEmitter, and compatibility names: bridges-streams-events.md.- TriggerFlow state/signals, workflow close, recovery, or application
orchestration: use
agently-triggerflow. - Actions, ExecutionResources, TaskWorkspace, RecordStore, services, or
DevTools: use
agently-runtime.
Boundary
Choose the smallest surface that matches the caller:
- Direct call/
awaitwhen caller and work already have the same shape. async with Stage()for explicit async lifetime;with Stage()for a deliberate blocking boundary.Stage.as_sync/as_asyncfor one scalar adapter.Stage.go(...)plusStageHandlefor a submitted result that must be read across loops or threads.Stage.create_task(...)for caller-loop work Stage creates;adopt(...)only for a task that already exists.StageCallBridgefor injected lifetime, managed blocking cancellation, or iterator conversion;StageStreamfor generator replay.Tunnelfor an independently writable process-local replay channel andEventEmitterfor process-local listeners.
A synchronous facade blocks its calling thread. Do not bridge a call that already has the correct native shape.
Invariants
- Body completion and settlement are different facts. Read the body with
get()/async_get()and wait for retained descendants/finalizers withwait_settled()/async_wait_settled()when their completion matters. - Never block the caller-owned loop needed by the work. Use the matching async barrier when Stage reports a lifecycle conflict.
- After cancellation, wait for settlement before claiming no later Stage-owned work can occur. Stage cannot preempt a non-cooperative blocking function or undo an external side effect.
- Put concurrency, pending, worker, and idle limits at their actual pressure boundaries. Carrier-loop count is not application admission control.
- Automatic Stage scopes remain independent even when they safely reuse a carrier.
Stage does not own workflow progression, business retry, persistence,
authorization, provider cancellation acknowledgement, or external side
effects. TriggerFlowExecution remains Agently's public workflow lifecycle
owner; Stage objects and carrier state must not enter execution snapshots.
LocalTaskScope and the historical Stage dispatch/function type names are 0.3
compatibility surfaces. Do not teach them as new owner layers.
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/agentera/agently-skills/agently-stage">View agently-stage on skillZs</a>