Skip to content
Back to skills

Space App Diagnostics

ASecurity

Inspect retained Space APP_DEBUG captures, recorder state, and fixed authenticated diagnostics proofs on public-host. Load for Space capture investigations, not ordinary browser checks.

  • 10 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added October 16, 2026
ai-agentsgoshellbackendperformance

Works with

  • terminal
  • cli
  • mcp

Security analysis

A100/100

Pro scans all 3 files and shows the line behind each finding

Scanned October 16, 2026

npx -y skills add oll4com/spaceapp --skill space-app-diagnostics --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Space App Diagnostics?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Space App Diagnostics
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/oll4com-space-app-diagnostics/badge)](https://www.skillsdirectory.com/skills/oll4com-space-app-diagnostics)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: space-app-diagnostics
description: Inspect retained Space APP_DEBUG captures, recorder state, and fixed authenticated diagnostics proofs on public-host. Load for Space capture investigations, not ordinary browser checks.
metadata:
  category: DOMAIN_POLICY
---

# Space App Diagnostics

Use the existing `space_ops` or native `space-readonly` catalog to inspect the
global Space diagnostics capture safely. Keep the MCP catalogs at exactly seven
full tools and three readonly tools.

Native shell agents access the same backend through `space-capability call`
with JSON `{serverId:"space_ops",toolName,arguments}` on stdin; no MCP
registration is required. Other agents use their available MCP transport.
Keep authentication, privacy and fixed proof checks identical on either path.
Use native vision for screenshots when available; Vision MCP is text-only fallback.

## Establish scope

- Target only `public-host:/opt/spaceapp` and `http://127.0.0.1:4911/`.
- Read `/opt/spaceapp/AGENTS.md` before changing code or live state.
- Read [references/mcp-contract.md](references/mcp-contract.md) before querying
  `APP_DEBUG`, handling visual segments, or running the diagnostic proof.
- Treat Debug activation and video recording as admin state changes. Do not
  enable either merely to inspect already retained diagnostics.

## Inspect a capture

1. Call `space_status` first. Record Debug ON/OFF, `captureId`, usage/quota,
   recorder status, live commit, service health, and worktree cleanliness.
2. Call `space_logs` with `source: "APP_DEBUG"`. Start with the shortest useful
   window and add only known filters. Never combine `source` with `service`.
3. Correlate events by `captureId`, `clientId`, `correlationId`, `roomId`,
   `paneId`, event sequence, and timestamps. Prefer `ANOMALY`, `VISUAL`,
   `PERFORMANCE`, `ERROR`, and `NETWORK` filters for flicker investigations.
4. Treat structured output as sanitized technical evidence. Treat every
   `VIDEO` segment as sensitive visible-tab content.
5. State whether evidence is absent, expired, dropped, filtered out, or
   inconclusive. Do not infer user content from missing telemetry.

## Run the fixed proof

- Run `PROVE_APP_DIAGNOSTICS` only when the user explicitly requests a real
  enable/capture/disable proof.
- Use only a persistent `AGENT_PROOF` room and the laptop viewport. Never pass,
  select, clone, resize, attach to, or delete an operator room.
- Preserve the browser host, memory workers, pane host, and every existing CLI
  session.
- Require successful assertions, `bodyHasLogin=false`, `isolation.ok=true`,
  zero fresh console/network failures, at least one valid WebM segment, and
  final cleanup.

## Capture existing workspace room switches

- Run `CAPTURE_WORKSPACE_ROOM_SWITCHES` only when the user explicitly requests
  autonomous Debug/Record diagnosis of their existing rooms.
- This is a narrow full-`space_ops` exception to the normal proof-room
  isolation rule. It is not present in the readonly catalog.
- Use the laptop viewport. Do not pass a room id. The fixed runner enumerates
  only existing `WORKSPACE` rooms, excludes `AGENT_PROOF` and `CLI_RECOVERY`,
  requires at least two rooms, and never creates rooms, panes, or CLI sessions.
- The runner must fail with `DIAGNOSTICS_BUSY` when Debug or the recorder is
  already active. It uses a scoped `APP_DIAGNOSTICS` automation session whose
  non-diagnostic mutations fail closed.
- It records two deterministic adjacent-pair `A → B → A` passes, keeps
  terminal/chat/browser bodies opaque before the first app render, and returns
  only geometry, timing, request, output-counter, WebM metadata, and
  session/PID continuity evidence. Never expose raw terminal text, DOM/body
  text, or a raw video path; require `terminalTextRedacted=true`.
- Under an adaptive controller, cold selection must expose an automatic
  `OPEN_SAFELY` admission decision. When safe capacity is full, the expected
  reverse-LRU hidden runtime is evicted; when no eligible hidden runtime exists,
  the already reserved atomic cold-reveal slot may be used without an eviction.
  There is no dialog or manual `+1` admission.
- Under an adaptive controller, if all eligible workspaces begin warm, the
  runner may create one browser-local cold opportunity by sending a fixed
  numeric-only `PANE_LIMIT` signal through the existing terminal-output-pressure
  path for a real hidden warm Terminal runtime. The runtime eviction and
  following admission must be real, while rooms, panes, sessions, capacity
  rules, server state, and CLI processes remain unchanged. At least one cold
  sample and one automatic `OPEN_SAFELY` decision are mandatory.
- Under the user-approved fixed six-room controller (`memorySource="fixed"`),
  accept the fixed budget directly and never synthesize pressure or evict a
  warm runtime. Measure a cold sample only when an existing workspace starts
  naturally outside the fixed warm set; if all existing workspaces fit within
  six rooms, warm-only adjacent switching is the valid capture.
- Hidden warm layers must report `terminalPrefillReady=true` within two
  seconds. Initial replay may write headlessly only as tagged `PREFILL`;
  later live output remains buffered. Require
  `hiddenMaintenanceWritesAccounted=true` and
  `noUnaccountedHiddenXtermWrites=true`, with hidden writes equal to the sum of
  tagged `PREFILL` and bounded maintenance writes.
- Require warm p95 at most `250 ms`, any observed cold maximum at most `900 ms`,
  and zero blank, double, or stale reveal frames or fresh console/network
  failures.
- Require final Debug OFF, `captureId=null`, recorder `IDLE`, unchanged
  pre-existing CLI session IDs/PIDs, and an unchanged pane-host PID.

## Enforce the privacy boundary

- Never request, store, reconstruct, or report chat, terminal, clipboard,
  typed text, request bodies, cookies, credentials, tokens, passwords, file
  content, or arbitrary console/user text from structured diagnostics.
- Use visual paths only from the full `space_ops` catalog. Native readonly
  agents may receive sanitized events and metadata, never raw segment paths.
- Do not expose, attach, transcribe, or publish a raw video unless the user's
  current task explicitly requires inspection of that visual evidence.

## Finish safely

Call `space_status` again after any proof or state-changing workflow. Do not
finish until Debug is OFF, `captureId` is `null`, recorder status is `IDLE`,
the live worktree is clean, and required services remain healthy.

Files in this skill

  • SKILL.md6.4 KB
  • agents/openai.yaml235 B
  • references/mcp-contract.md6 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.