2 KiB
| name | description | type | originSessionId |
|---|---|---|---|
| televibe project | Greenfield Teleport access plugin built in Go that AI-risk-scores access requests and conditionally files ITSM Jira tickets | project | b94f12fe-9fb8-45ba-8dd5-65f49e81db87 |
televibe is a new Go-based Teleport access plugin (modeled on the official Jira access plugin) living at /Users/steve.briggs/projects/televibe. Initialized 2026-04-22.
What it does: watches Teleport access requests; sends request reason + roles to a configurable AI provider (Anthropic direct API, AWS Bedrock, or generic webhook — one at a time) for a risk assessment; combines AI scores with structural checks (CUSTX-### ticket regex in description, description length, off-hours timing) into a 0-100 score; maps to Gen-Z slang tiers (no cap / sus / mad sus fr / straight L, touch grass).
Behavior: below configurable ticket_threshold → auto-approve via SubmitAccessReview. At or above → create ticket in configurable Jira project (defaults to "ITSM") and hold the Teleport request in PENDING. A poller reconciles ITSM ticket status to Teleport approval/denial — an SRE transitioning the ITSM ticket to the approved or rejected status drives the Teleport decision.
Why: User wants to gate privileged access through AI review + SRE-controlled Jira workflow, with low-risk requests bypassing the Jira overhead entirely.
How to apply: When extending or debugging, remember:
- Module path is plain
televibe(no github prefix yet) — user must rungo mod tidyto pull deps. - Top-level
Configin config.go composes per-packageConfigtypes from ai/, risk/, jira/. - Anthropic provider uses direct HTTP (not the SDK) with prompt caching on the system block.
- State recovery across restarts is via
jira.ListOpenTeleportTickets(JQL search forlabels = televibe), parsing Teleport request ID out of the ticket description. - ITSM ticket description uses Jira wiki markup, not ADF — will need adjustment if targeting Jira Cloud REST v3.