a2a cloud
production blueprint · it

SaaS license reclamation agent blueprint.

Identify reclaim candidates from approved utilization exports and prepare an owner-reviewed license action list.

Search intent: AI agent for SaaS license reclamation

Published by a2a cloudProduct-source methodology →
01 · the contract

Start from a bounded job, not a blank chat box.

trigger

A scheduled license utilization review begins.

owner

IT service owner

agent stops at

The application owner approves reclamation after user or manager review.

KPI · decrease

unused licensed seats (seats). Count paid seats approved as unused after review.

inputs

Evidence the run may read

  • License assignment export
  • Approved activity summary
  • Role and exception register
outputs

Artifacts the run must produce

  • Reclamation candidate list
  • Exception and owner map
  • Notification draft
02 · topology

Small specialists. Named handoffs. One accountable decision.

Each stage produces an artifact another stage can inspect. The final node is a person, not an autonomous write to an external system.

  1. 01

    intake

    Validate and normalize the saas license reclamation inputs.

  2. 02

    utilization analyst

    Produce the reclamation candidate list.

  3. 03

    exception matcher

    Produce the exception and owner map.

  4. 04

    license reviewer

    Challenge the saas license reclamation result and prepare an approval packet.

  5. 05

    IT service owner

    The application owner approves reclamation after user or manager review.

intakevalidated input packetutilization-analyst
utilization-analystReclamation candidate listexception-matcher
exception-matcherException and owner maplicense-reviewer
license-reviewerapproval packet with evidence referenceshuman-approver
03 · authority

Grant the run only what this case needs.

Source material is read-only. Drafts land in a case-specific output path. Tools may read or propose; the human gate owns the external write.

read

case inputs

workspace/it/saas-license-reclamation/inputs/**

Read only the evidence attached to this workflow instance.

write-output

case outputs

workspace/it/saas-license-reclamation/outputs/**

Write drafts and evidence artifacts without modifying source records.

invoke-scoped-tool

approved tools

it:saas-license-reclamation:read-or-propose

Invoke only tools explicitly granted for this run; external writes remain gated.

required human decision

The application owner approves reclamation after user or manager review.

Decision owner: IT service owner.

04 · implementation

A private, bounded starting manifest.

The blueprint starts private, caps its DAG, disables replanning, and exposes no public endpoint. Add only the tools and data adapters this workflow has approved.

a2a.yamlsafe starting point
name: it-saas-license-reclamation
version: 0.1.0
entrypoint: agent:BlueprintAgent
expose:
  public: false
composition:
  planning: deterministic_dag
  max_nodes: 6
  max_parallel: 1
  max_replans: 0
05 · acceptance test

Pass only with evidence.

  1. 01

    Evidence traceability

    Every material conclusion cites an input artifact or a scoped tool result from this run.

  2. 02

    No license is proposed for removal solely from one weak activity signal or during an approved leave.

    No license is proposed for removal solely from one weak activity signal or during an approved leave.

  3. 03

    Approval boundary

    The run stops at a proposal and records the human decision before any external side effect.

failure containment

Stop small. Preserve the evidence.

Utilization data is stale or identity matching produces multiple possible users.

Containment: Return a partial result with unresolved items; do not broaden scope or perform an external write.

Operator: Attach the missing evidence, narrow the brief, or explicitly approve a new scoped run.

A required input or tool grant is unavailable.

Containment: Stop the affected branch and preserve completed artifacts in the case output workspace.

Operator: Grant only the missing resource or continue with that branch marked out of scope.

06 · proof

Sign the run facts. Keep money in the billing ledger.

Current platform receipts sign caller identity or classification, skill, bounded input evidence, verified grant IDs when present, outcome or result preview, and timing. Optional file, tool, artifact, handoff, evaluation, and review fields require separate instrumentation and are not populated by default. Price, fees, payouts, and later human approvals remain separate platform records.

The example uses only fields populated by the current platform sealing paths. It is illustrative, not a record of a real customer run.

ExecutionReceipt · selected fieldsEd25519 token
{
  "receipt_id": "rcpt_01J...",
  "schema_version": 1,
  "agent_name": "it-saas-license-reclamation",
  "caller": "user:workflow-owner",
  "task_id": "case_saas_license_reclamation",
  "skill_name": "saas_license_reclamation",
  "input_hash": "4d7c...9a2f",
  "grant_ids": [
    "grt_case_inputs",
    "grt_tool_propose"
  ],
  "status": "ok",
  "result_preview": "Output prepared: Reclamation candidate list. Human decision remains separate.",
  "elapsed_ms": 4218
}
put the pattern to work

Start private. Scope the authority. Require the decision.

Deploy the workflow as a bounded internal agent, verify its outputs and the receipt fields actually emitted, then expand only the scopes your acceptance test proves it needs.