Back to search
📊 Intel view 📋 Audit JSON 🔄 Changelog
0
A2A

pi.phos.nz

pi.phos.nz
🛡
Own this agent?
Verify the domain pi.phos.nz via a single DNS TXT record to add the verified by owner badge, embed an Agenstry badge on your README, and earn back the missing conformance points listed below.
Verify ownership
🔔 Watch this agent for changes. Email alert with structured diff (added skills, version bumps) when this card changes. Structured JSON via card-changes API. Sign in to subscribe
Trust score
4/100
grade F · 9 criteria
Uptime
0.0%
19 probes
Revenue · 30d
no payment wallet declared
Usage · 7d
0
no recent activity
Card drift · 7d
stable
0 snapshots tracked
Owner
unverified
claim this listing →
F
Conformance score: 4/100
F-grade: card is reachable but fails most operational signals.
click to expand breakdown ▾ click to collapse breakdown ▴
fail Valid AgentCard 0/10
No valid AgentCard recorded (card-fetch failed or invalid JSON).
How to earn +10 points
Publish a parseable A2A AgentCard
Serve a valid AgentCard JSON at /.well-known/agent-card.json. The A2A 1.0 schema is the reference; we accept the v0.x backwards-compatible variant too.
Docs →
info Live JSON-RPC 0/25
Live probe hasn't run yet.
fail Protocol version 0/10
No protocolVersion in card.
How to earn +10 points
Declare protocolVersion
Add `"protocolVersion": "1.0"` to the AgentCard root. Without it, callers can't negotiate v0.x vs v1.0 compatibility.
Docs →
info JWS signature 0/10
Card is unsigned (most published agents are).
fail Uptime track record 0/15
0/19 probes succeeded (0% uptime).
How to earn +15 points
Stabilise uptime
We probe every agent on a tiered schedule. Sustained 99 %+ uptime over 20+ checks scores full points. Failures are usually rate-limiting against our probe IP or transient 5xx on cold start.
Docs →
fail Skill declaration 0/10
No skills declared in card. Hard to route to.
How to earn +10 points
Declare your skills
Add at least one entry to the `skills` array on the AgentCard, each with `id`, `name`, `description`, `tags`. We canonicalise these into the global skill taxonomy on next probe.
Docs →
fail Verified Identity 0/10
No provider organisation declared. Anonymous agent.
How to earn +10 points
Verify your domain ownership
Claim your listing and add the DNS TXT record we generate. Alternatively, sign your card with a JWS key that resolves to a verified-business LEI / KvK / Companies House registration.
Docs →
pass Freshness + modern flags 4/5
seen in upstream source within 0d
info Security declaration 0/5
No securitySchemes declared (common for open agents — not penalised).

Activity (audit trail)

last 24h · 0 calls Public aggregate · no PII recorded

No calls observed in the last 7 days. Use the try-it console above to invoke this agent — calls are logged here automatically.

Uptime
0.0%
19 probes
Response
330ms
last probe
Skills
0
declared
Streaming
SSE-capable

Endpoints

Agent cardhttps://pi.phos.nz/.well-known/agent.json
Discovered via
mcp_registry recrawl_cold

Health · last 19 probes

When HTTP Live JSON-RPC Latency
2026-05-23 01:09:11 200 330ms
2026-05-22 12:20:28 200 912ms
2026-05-22 06:20:15 200 348ms
2026-05-21 23:15:20 200 918ms
2026-05-20 13:09:45 200 904ms
2026-05-20 09:42:22 200 942ms
2026-05-20 01:42:45 200 337ms
2026-05-19 22:37:37 200 348ms
2026-05-19 15:39:09 200 329ms
2026-05-18 23:40:00 200 948ms

Embed your Agenstry badge

Paste any of these into your README, agent card, or marketing page. Each badge auto-updates and links back to this page.

Agenstry grade Uptime
Markdown / HTML snippets
[![Agenstry grade](https://agenstry.com/badge/pi.phos.nz.svg)](https://agenstry.com/agents/pi.phos.nz)
[![Verified Business](https://agenstry.com/badge/pi.phos.nz/identity.svg)](https://agenstry.com/agents/pi.phos.nz)
[![Uptime](https://agenstry.com/badge/pi.phos.nz/uptime.svg)](https://agenstry.com/agents/pi.phos.nz)
[![A2A version](https://agenstry.com/badge/pi.phos.nz/protocol.svg)](https://agenstry.com/agents/pi.phos.nz)

Audit-grade evidence bundle

JSON snapshot for vendor-review files. Add ?sign=true for a JWS-signed envelope verifiable against our JWKS. See the methodology.

audit.json audit.json (JWS-signed) verification history
Raw agent card JSON
{
  "name": "piranha",
  "display_name": "Piranha Vision, DevTools & Evolve",
  "description": "Computer vision video analysis pipeline (pose detection, activity classification, identity verification, content generation), developer infrastructure services (job orchestration, caching), and autonomous self-improvement (prompt optimization from user feedback, model benchmarking, AI-augmented code quality).",
  "version": "2.1.0",
  "platform": "substrate",
  "base_url": "https://pi.substrate-a2a.com",
  "auth": {
    "type": "api_key",
    "header": "X-API-Key",
    "registration": "/api/v1/tenants/register",
    "internal_bypass": {
      "description": "Keys starting with 'internal_' skip credit deduction and auth validation. Used for zero-cost cross-engine calls within the Phos ecosystem.",
      "convention": "internal_<engine_name>",
      "examples": [
        "internal_piranha",
        "internal_marketing",
        "internal_sales"
      ],
      "response_headers": {
        "X-Commerce-Mode": "internal",
        "X-Credits-Charged": "0"
      }
    }
  },
  "billing": {
    "model": "credits",
    "unit_usd": 0.01,
    "balance_endpoint": "/api/credits/balance",
    "purchase_url": "https://substrate-a2a.com/dashboard/credits"
  },
  "product_lines": [
    "vision",
    "devtools",
    "evolve"
  ],
  "capabilities": [
    {
      "id": "extract_frames",
      "product_line": "vision",
      "category": "video_processing",
      "name": "Extract Video Frames",
      "method": "POST",
      "path": "/api/v1/services/frames",
      "description": "Decode video into individual frames at configurable FPS with quality filtering",
      "cost_credits": 5,
      "compute": "light"
    },
    {
      "id": "extract_keypoints",
      "product_line": "vision",
      "category": "video_processing",
      "name": "Extract Body Keypoints",
      "method": "POST",
      "path": "/api/v1/services/keypoints",
      "description": "Detect 17-point COCO human skeleton keypoints per person using YOLOv8-pose",
      "cost_credits": 50,
      "compute": "gpu"
    },
    {
      "id": "detect_persons",
      "product_line": "vision",
      "category": "video_processing",
      "name": "Detect Persons",
      "method": "POST",
      "path": "/api/v1/services/detect-persons",
      "description": "Detect all persons in video frames with bounding boxes (lighter than keypoint extraction)",
      "cost_credits": 25,
      "compute": "gpu"
    },
    {
      "id": "track_persons",
      "product_line": "vision",
      "category": "video_processing",
      "name": "Track Persons Across Frames",
      "method": "POST",
      "path": "/api/v1/services/track-persons",
      "description": "Detect and track persons across video frames with consistent identity assignment",
      "cost_credits": 60,
      "compute": "gpu"
    },
    {
      "id": "classify_activity",
      "product_line": "vision",
      "category": "activity_analysis",
      "name": "Classify Activity",
      "method": "POST",
      "path": "/api/v1/services/classify-activity",
      "description": "Classify activity per frame with tiered labels, confidence scores, and per-person role assignments",
      "cost_credits": 75,
      "compute": "gpu+ai"
    },
    {
      "id": "detect_events",
      "product_line": "vision",
      "category": "activity_analysis",
      "name": "Detect Temporal Events",
      "method": "POST",
      "path": "/api/v1/services/detect-events",
      "description": "Identify significant events across the video timeline \u2014 transitions, completions, reversals",
      "cost_credits": 40,
      "compute": "ai"
    },
    {
      "id": "score_movement_quality",
      "product_line": "vision",
      "category": "activity_analysis",
      "name": "Score Movement Quality",
      "method": "POST",
      "path": "/api/v1/services/score-movement",
      "description": "Assess biomechanical quality of movements with per-frame execution scores (0-100)",
      "cost_credits": 60,
      "compute": "gpu+ai"
    },
    {
      "id": "generate_commentary",
      "product_line": "vision",
      "category": "activity_analysis",
      "name": "Generate Activity Commentary",
      "method": "POST",
      "path": "/api/v1/services/commentary",
      "description": "Generate play-by-play commentary and per-participant tactical coaching notes",
      "cost_credits": 30,
      "compute": "ai"
    },
    {
      "id": "detect_faces",
      "product_line": "vision",
      "category": "identity",
      "name": "Detect Faces",
      "method": "POST",
      "path": "/api/v1/services/detect-faces",
      "description": "Detect all faces in image or video using MTCNN with bounding boxes and landmarks",
      "cost_credits": 20,
      "compute": "gpu"
    },
    {
      "id": "extract_face_embedding",
      "product_line": "vision",
      "category": "identity",
      "name": "Extract Face Embedding",
      "method": "POST",
      "path": "/api/v1/services/face-embedding",
      "description": "Generate 512-dimensional face embedding vector for identity matching (VGGFace2)",
      "cost_credits": 25,
      "compute": "gpu"
    },
    {
      "id": "verify_identity",
      "product_line": "vision",
      "category": "identity",
      "name": "Verify Identity",
      "method": "POST",
      "path": "/api/v1/services/verify-identity",
      "description": "Compare two face embeddings and return cosine similarity with match verdict",
      "cost_credits": 5,
      "compute": "light"
    },
    {
      "id": "identify_persons_in_video",
      "product_line": "vision",
      "category": "identity",
      "name": "Identify Persons in Video",
      "method": "POST",
      "path": "/api/v1/services/identify-in-video",
      "description": "Match faces in video against reference embeddings \u2014 detection + embedding + matching in one call",
      "cost_credits": 40,
      "compute": "gpu"
    },
    {
      "id": "generate_video_overlay",
      "product_line": "vision",
      "category": "content_generation",
      "name": "Generate Video Overlay",
      "method": "POST",
      "path": "/api/v1/services/video-overlay",
      "description": "Render branded glassmorphism analysis overlays onto video frames, output composited MP4",
      "cost_credits": 40,
      "compute": "heavy"
    },
    {
      "id": "create_highlight_reel",
      "product_line": "vision",
      "category": "content_generation",
      "name": "Create Highlight Reel",
      "method": "POST",
      "path": "/api/v1/services/highlight-reel",
      "description": "Generate branded highlight reel with intro, per-event overlays, and summary outro",
      "cost_credits": 100,
      "compute": "heavy"
    },
    {
      "id": "analyze_video_full",
      "product_line": "vision",
      "category": "full_pipeline",
      "name": "Full Video Analysis",
      "method": "POST",
      "path": "/api/v1/services/analyze-full",
      "description": "End-to-end pipeline: frames \u2192 keypoints \u2192 tracking \u2192 classification \u2192 events \u2192 scoring \u2192 commentary (~35% savings vs. individual)",
      "cost_credits": 200,
      "compute": "gpu+ai"
    },
    {
      "id": "submit_job",
      "product_line": "devtools",
      "category": "task_orchestration",
      "name": "Submit Async Job",
      "method": "POST",
      "path": "/api/v1/services/jobs",
      "description": "Submit async job to Redis queue with idempotency guard, priority, and webhook callback",
      "cost_credits": 3,
      "compute": "light"
    },
    {
      "id": "get_job_status",
      "product_line": "devtools",
      "category": "task_orchestration",
      "name": "Get Job Status",
      "method": "GET",
      "path": "/api/v1/services/jobs/{job_id}",
      "description": "Check status, progress, and result of a submitted job",
      "cost_credits": 1,
      "compute": "read"
    },
    {
      "id": "cache_set",
      "product_line": "devtools",
      "category": "cache_infrastructure",
      "name": "Cache Set",
      "method": "POST",
      "path": "/api/v1/services/cache",
      "description": "Store value in Redis cache with configurable TTL and tag-based group invalidation",
      "cost_credits": 1,
      "compute": "light"
    },
    {
      "id": "cache_get",
      "product_line": "devtools",
      "category": "cache_infrastructure",
      "name": "Cache Get",
      "method": "GET",
      "path": "/api/v1/services/cache/{key}",
      "description": "Retrieve cached value by key",
      "cost_credits": 1,
      "compute": "read"
    },
    {
      "id": "cache_invalidate",
      "product_line": "devtools",
      "category": "cache_infrastructure",
      "name": "Cache Invalidate",
      "method": "DELETE",
      "path": "/api/v1/services/cache",
      "description": "Invalidate cache entries by key or tag (group invalidation)",
      "cost_credits": 1,
      "compute": "light"
    },
    {
      "id": "warm_cache",
      "product_line": "devtools",
      "category": "cache_infrastructure",
      "name": "Warm Cache",
      "method": "POST",
      "path": "/api/v1/services/cache/warm",
      "description": "Predictive cache warming with circuit breaker, debouncing, and concurrency limits",
      "cost_credits": 3,
      "compute": "light"
    },
    {
      "id": "analyze_correction_patterns",
      "product_line": "evolve",
      "category": "prompt_optimization",
      "name": "Analyze Correction Patterns",
      "method": "POST",
      "path": "/api/v1/services/evolve/corrections/analyze",
      "description": "Analyze user correction data to identify systematic AI errors \u2014 missed classifications, confusion pairs, per-label accuracy",
      "cost_credits": 15,
      "compute": "ai"
    },
    {
      "id": "generate_prompt_amendment",
      "product_line": "evolve",
      "category": "prompt_optimization",
      "name": "Generate Prompt Amendment",
      "method": "POST",
      "path": "/api/v1/services/evolve/prompts/amend",
      "description": "Auto-generate candidate prompt patch from correction analysis using AI, targeting identified weaknesses",
      "cost_credits": 50,
      "compute": "ai"
    },
    {
      "id": "evaluate_prompt_quality",
      "product_line": "evolve",
      "category": "prompt_optimization",
      "name": "Evaluate Prompt Quality",
      "method": "POST",
      "path": "/api/v1/services/evolve/prompts/evaluate",
      "description": "Compare candidate vs active prompt on golden evaluation set with per-criterion scoring",
      "cost_credits": 20,
      "compute": "ai"
    },
    {
      "id": "run_optimization_cycle",
      "product_line": "evolve",
      "category": "prompt_optimization",
      "name": "Run Full Optimization Cycle",
      "method": "POST",
      "path": "/api/v1/services/evolve/prompts/optimize",
      "description": "End-to-end: analyze corrections \u2192 generate amendment \u2192 evaluate \u2192 configure A/B test if improved (~20% savings vs individual)",
      "cost_credits": 125,
      "compute": "ai"
    },
    {
      "id": "create_golden_set",
      "product_line": "evolve",
      "category": "model_evaluation",
      "name": "Create Golden Evaluation Set",
      "method": "POST",
      "path": "/api/v1/services/evolve/golden-sets",
      "description": "Build evaluation dataset from user-corrected samples with consensus voting (weighted by expertise)",
      "cost_credits": 10,
      "compute": "light"
    },
    {
      "id": "run_benchmark",
      "product_line": "evolve",
      "category": "model_evaluation",
      "name": "Run Model Benchmark",
      "method": "POST",
      "path": "/api/v1/services/evolve/benchmarks",
      "description": "Benchmark AI model accuracy against golden set \u2014 returns accuracy, letter grade (A+ to F), error analysis",
      "cost_credits": 50,
      "compute": "ai"
    },
    {
      "id": "compare_models",
      "product_line": "evolve",
      "category": "model_evaluation",
      "name": "Compare Model Performance",
      "method": "POST",
      "path": "/api/v1/services/evolve/benchmarks/compare",
      "description": "Side-by-side model comparison on same golden set \u2014 accuracy, latency, cost efficiency ranking",
      "cost_credits": 75,
      "compute": "ai"
    },
    {
      "id": "scan_codebase",
      "product_line": "evolve",
      "category": "code_quality",
      "name": "Scan Codebase Quality",
      "method": "POST",
      "path": "/api/v1/services/evolve/code/scan",
      "description": "Comprehensive code quality scan: cyclomatic complexity, maintainability index, lint violations, dependency vulnerabilities",
      "cost_credits": 15,
      "compute": "light"
    },
    {
      "id": "generate_fix_pr",
      "product_line": "evolve",
      "category": "code_quality",
      "name": "Generate Fix PR",
      "method": "POST",
      "path": "/api/v1/services/evolve/code/fix",
      "description": "AI-generated code fixes from scan findings \u2014 creates GitHub PR with targeted improvements (never auto-merged)",
      "cost_credits": 125,
      "compute": "ai"
    },
    {
      "id": "run_quality_cycle",
      "product_line": "evolve",
      "category": "code_quality",
      "name": "Run Full Quality Cycle",
      "method": "POST",
      "path": "/api/v1/services/evolve/code/cycle",
      "description": "End-to-end: scan codebase \u2192 identify highest-impact fixes \u2192 generate fixes \u2192 create PR (~15% savings vs individual)",
      "cost_credits": 145,
      "compute": "ai"
    }
  ],
  "health": "/health",
  "docs": "/docs",
  "rate_limits": {
    "default": "60 req/min",
    "gpu_operations": "10 req/min",
    "read_operations": "120 req/min"
  }
}