Skip to content
Back to skills

Backstage Ai

ASecurity

Use when editing Open Horizons AI catalog entities, AI Chat, agent APIs, or MCP tool exposure.

  • 2 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 4, 2026
ai-agentsgogitapifrontendbackend

Works with

  • cli
  • api
  • mcp

Security analysis

A100/100

Scanned September 4, 2026

npx -y skills add paulasilvatech/awesome-harness-primitives --skill backstage-ai --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Backstage Ai?

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

Security grade badge for Backstage Ai
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/paulasilvatech-backstage-ai-awesome-harness-primitives/badge)](https://www.skillsdirectory.com/skills/paulasilvatech-backstage-ai-awesome-harness-primitives)

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: backstage-ai
description: Use when editing Open Horizons AI catalog entities, AI Chat, agent APIs, or MCP tool exposure.
paths:
  - backstage/catalog/ai-*.yaml
  - backstage/catalog/mcp-servers.yaml
  - backstage/plugins/ai-chat/**/*.ts
  - backstage/plugins/ai-chat/**/*.tsx
  - backstage/server/agent-api*/*.py
  - backstage/server/agent-api*/**/*.py
user-invocable: false
---

<!-- Generated from harness/github-copilot/plugins/open-horizons-platform/instructions/backstage-ai.instructions.md by harness/claude-code/scripts/convert_from_copilot.py. Edit the source, not this file. -->

# Backstage AI Surfaces

These rules cover the catalog and application boundary between Backstage AI Chat, agent APIs, and MCP tools.

## Conventions

- Keep logical agent names, catalog entities, model-routing profiles, and UI choices aligned; do not expose deployment names as portable agent identities.
- Model AI assets with supported Backstage entity kinds and explicit owners, lifecycle, descriptions, and source relationships.
- Give MCP tools stable names, typed input/output contracts, bounded results, and an explicit read-only or mutating classification.
- Authenticate the Backstage service independently from the human actor and carry only validated identity context across the agent boundary.
- Preserve the AI Chat streaming contract and convert upstream failures into safe, actionable states without leaking prompts, tokens, or stack traces.
- Filter tool visibility and execution through authorization; catalog visibility is not execution permission.
- Keep model, endpoint, and credential configuration external to catalog entities and frontend bundles.
- Add contract tests for routing, stream parsing, denied tools, malformed events, and dependency failure.

## Verification

- Catalog identities and runtime role inventories agree.
- The browser receives no secret-bearing configuration or raw provider error.
- Tool execution remains governed even when invoked through MCP or delegated agents.

## Do / Do Not

| Do | Do not |
| --- | --- |
| Preserve typed streaming, identity, authorization, and tool contracts. | Expose deployment details, credentials, raw errors, or unrestricted tools. |
| Execute routing, denied-tool, malformed-event, and dependency-failure tests. | Treat catalog visibility or hidden UI as execution permission. |

## Checklist Before Opening a PR

- [ ] The change matches this instruction's `applyTo` scope.
- [ ] Catalog, agent, route, and tool identities remain aligned.
- [ ] Authentication and backend authorization are tested separately.
- [ ] Streaming and failure-path contract tests pass or blockers are recorded.
- [ ] No secret-bearing client configuration or raw provider error is exposed.

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.