JiCoRedact. Approve. Document.

What JiCo does

Selected capabilities, each backed by a line in the feature list — what you read here is built, not planned.

What JiCo connects to

JiCo sits between your AI assistant and Jira. This is the way in.

  • Read Jira Data Center and — once approved — write to it, through a connector of our own.
  • For Jira and Confluence in the Cloud, JiCo signs in with an email address and an API token.
  • Keep working offline: what was read stays local, and proposals are re-checked before they run.
  • Read and comment on Confluence pages, through the same gate as a ticket.
  • The same connector recognises Confluence Cloud by its address — pages, history, comparison, comments and attachments, tested live against a Cloud instance.
  • JiCo reads only the projects and spaces you set up — blocked areas stay out, even when a search hits them.
  • Read source code from GitHub or GitLab — through a cleaned mirror: people in the history redacted, secrets redacted, stored encrypted.
  • The AI searches your repositories, lists files and reads histories — five read-only tools, no write access.
  • gitleaks checks the entire history for secrets before any model reads it — if the tool is missing, JiCo says so instead of staying quiet.

Redacting before the model sees anything

A model cannot pass on what it never saw. So redaction happens before, not after.

  • Social security numbers, IBANs, card numbers and secrets are recognised by their check digit, not guessed.
  • People are referenced, not reproduced: the model sees a placeholder, never the name.
  • The mapping from placeholder to plain text is encrypted on your own machine and expires after 96 hours.
  • What cannot be checked does not go out: an unreadable attachment is not passed through.
  • Find similar cases without any plaintext leaving the building.
  • Placeholders as readable as you allow: «Person 7», initials, or first name with an initial — never the full name.
  • The AI sets person fields through the placeholder; it only becomes a Jira identifier at execution time — the model never sees it.

Approving before Jira changes

No write access without a person who understood it and approved it.

  • Unknown tools count as writing — and are held for approval, not waved through.
  • Every tool explains itself in plain language before it does anything.
  • Every write arrives as a proposal: the command in plain language, its effect, the object it touches.
  • Before executing, JiCo re-reads the issue — if someone has touched it in the meantime, nothing is executed.
  • Every approval takes effect exactly once — even if the panel and the terminal decide at the same time.
  • If an execution hangs after a crash, JiCo checks back after a minute and finishes it itself.
  • Pending approvals arrive grouped by topic, not as a list of single cases.
  • Eight checks run over every approval set; a serious finding blocks bulk approval.
  • What cannot be undone — deletion — is flagged as irreversible in the approval folder.
  • Approve or reject — in the browser panel or the terminal, independently of the AI client.
  • One topic, one decision — and where a serious finding stands, one by one only.
  • New proposals can also announce themselves by e-mail — only the number and the link to the on-the-go approval page; decisions are made there with a passkey.
  • Approve from your phone, confirmed with a passkey; the way there never reaches the AI assistant.

What the AI may do once you approve

Each of these is a proposal until a person understands and approves it. This is what you decide about.

  • If the AI names a person, you search for them live in Jira and pick them — approval only comes after that choice.
  • Instead of writing a second comment right after the first, the AI revises its own last one.
  • Assign an issue — you pick the person, the model only ever saw the placeholder.
  • Several pending comment proposals on the same issue are merged into one, not queued up.
  • Add or remove labels, versions and components one at a time — the other entries stay as they were.
  • Change status — which transitions exist and which fields they require, JiCo reads live from Jira instead of assuming.
  • Link issues and remove links — link type, target and duplicates are checked beforehand, the direction read back afterwards.
  • Move an issue to another project — which fields are lost appears in the approval before you decide.
  • Create an issue — checked against the project's creation screen before the proposal exists, and again before it runs.
  • Create and edit Confluence pages — without losing formatting, and with a version comment explaining the change.

Evidence of what left the house

What nobody can explain a year later was never documented.

  • Append-only record of proposal, decision and execution — auditable end to end.
  • The record holds the redaction tally, never a value: how much was redacted, not what.
  • The AI can ask JiCo what JiCo is and may do — the answer comes from this installation's own facts, not from the model.
  • Fifteen topics on data protection and security, each with the state of this installation.
  • Every answer sent to a model is recorded — with checksum, character count and number of placeholders.
  • A last check before output: if it finds an unredacted number, nothing goes out.
  • A guide with data flows, evidence and an acceptance test programme — for the people who have to sign off.
  • Audit trail and outbound record hang in a hash chain; one command verifies them.

What it gets you

The part that takes work off your hands — the recurring kind, not the kind that needs judgement.

  • Recurring checks run as jobs — one at a time, queued, or on a schedule.
  • A run presents its findings condensed by topic; you expand a single case when you need it.
  • What follows from a change is listed as a follow-up obligation instead of getting lost.
  • Your in-house terms come from Jira metadata — metadata, not ticket content.
  • Distributions by sprint too — how many issues per sprint, without a single title reaching the model.
  • Each house term applies only where you let it apply — a term from engineering does not reshape the text of sales.

Day one

Install it, store your access, watch it once — in that order, and the steps JiCo can take itself, it takes itself.

  • Setup looks at your Jira once — metadata only, no issue content — and configures itself from that.
  • JiCo registers itself in Claude Desktop, VS Code or Claude Code — with a backup first, and a broken config is left untouched.
  • A guided trial run shows the whole chain once: read an issue, see the placeholders, approve a comment.
  • Install with one command — no server, no database, nothing that keeps running once you stop JiCo.
  • JiCo sits among your applications and can run in the background from login — only files in your own profile, no admin rights.
  • On macOS a menu-bar icon shows how many approvals are waiting — one click takes you to the decision.
  • On Windows the same icon sits next to the clock, with the same menu — and re-creates itself after an Explorer restart.
  • Intel Macs get their own package; the one-click update tells the architectures apart by itself.

Operations

One local process, no service in between, no admin rights.

  • Not just Claude: other AI clients can be admitted to remote access — you decide which.
  • The licence is checked without a network — JiCo does not phone home for it.
  • A guard admits only the connections you set up — everything else is blocked and recorded.
  • Every dependency is pinned by hash, and the bill of materials comes from that same state.
  • One command checks your setup and reports access paths that lead past JiCo.
  • Updates come on a click, not in the background — verified by checksum and signature.

Data protection

For the people who have to agree: purpose limitation, minimisation, deletion — each with the place in the product that does it.

  • If personal data ended up in the wrong comment, that comment can be deleted after approval.
  • An attachment with personal data in the wrong issue can be removed after approval.
  • What JiCo stored locally is removed with one command — the audit trail stays.
  • The search itself runs through the gateway too: if it contains a key or token, it is not executed.
  • A search for a special category is not run masked — it is not run at all, and JiCo says why.
  • Social security number, IBAN, card and special categories appear as a mask, not as a placeholder with a way back.
  • One command removes JiCo from the machine entirely — configuration, reports, token lines, autostart and icon.
  • Your Jira token lives in the macOS keychain or the Windows credential manager — not in a file next to the config.
  • Which types can be resolved back is your setting — special categories deliberately have no switch.

Codetermination

JiCo does not measure people. What it could measure it deliberately does not — and writes down why.

  • Work logs come as a total per issue — never as time per person.
  • The metrics are derived from the log; there is no second record about people.
  • Metrics carry their own warning: approvals getting faster and more numerous is an alarm, not a success.
  • Searches about a person's work behaviour draw a warning first, then are blocked on repetition and recorded.

JiCoRedact. Approve. Document.

Freigabe-Cockpit and terminal

What JiCo can do in the browser panel, what deliberately stays in the terminal — 29 of 41 functions work in both places.

Approval Cockpit and terminal

  • jico onboard — set up, with a discovery run (metadata only) · Freigabe-Cockpit: Setup
  • jico status — show the current setup · Freigabe-Cockpit: Settings
  • jico check — configuration check: find files locally, recompute the client's view · Freigabe-Cockpit: Settings
  • jico connect — templates: register JiCo in Claude Code, Claude Desktop, Copilot · Freigabe-Cockpit: Settings
  • jico explain — self-disclosure: how JiCo handles PII, what is filtered and why · Freigabe-Cockpit: Settings
  • jico privacy — privacy and security: the main topics with the state of this installation · Freigabe-Cockpit: Privacy
  • jico metrics — metrics derived from the audit trail · Freigabe-Cockpit: Settings
  • jico approvals — view open approvals and decide · Freigabe-Cockpit: Approvals
  • jico log — recent log lines and derived metrics · Freigabe-Cockpit: Approvals
  • jico group — groups: name plus Jira projects and Confluence spaces · Freigabe-Cockpit: Settings › Projects & groups
  • jico model — local AI model: list · recommend (profiles, other providers) · set · Freigabe-Cockpit: Settings › Image check & templates
  • jico job — create, view and start assignments · Freigabe-Cockpit: Settings › Assignments
  • jico glossary — view the project glossary, build it from Jira metadata, add a term · Freigabe-Cockpit: Settings › Glossary
  • jico outbox — what went to an AI model - hashes, placeholders, final check · Freigabe-Cockpit: Settings › Outbound ledger
  • jico audit — verify the evidence chain of audit trail and outbound ledger, show the checkpoint · Freigabe-Cockpit: Settings › Outbound ledger
  • jico license — offline licence: status · request · install · return · Freigabe-Cockpit: Settings › Licence
  • jico workflow — learn and show status transitions per project and issue type from Jira · Freigabe-Cockpit: Settings › Glossary
  • jico conventions — house conventions: shipped, own file or repository · Freigabe-Cockpit: Settings › Glossary
  • jico certificate — trust the Approval Cockpit certificate in the operating system so the browser stops warning · Freigabe-Cockpit: Settings
  • jico update — where new versions are - JiCo queries nothing · Freigabe-Cockpit: Settings › Overview
  • jico token — keep the Jira token in the system keychain instead of a file · Freigabe-Cockpit: Setup
  • jico autostart — program icon and start of the Approval Cockpit at login · Freigabe-Cockpit: Settings
  • jico attachments — deferred attachment check: list · check · clean up (cache limited) · Freigabe-Cockpit: Settings › Data care
  • jico replica — redacted replica: overview · clean up · empty · Freigabe-Cockpit: Settings › Data care
  • jico prewarm — pre-warm the local store: now · on · off · status · Freigabe-Cockpit: Settings › Data care
  • jico knowledge — knowledge search over the replica: overview · build · search · empty · Freigabe-Cockpit: Settings › Data care
  • jico git — GitHub/GitLab as a redacted replica: list · add · remove · mirror · Freigabe-Cockpit: Settings › GitHub/GitLab
  • jico mask — resolvable masks: list · resolve (password required) · Freigabe-Cockpit: Settings › Data care
  • jico purge — delete what was stored locally from Jira (the audit trail stays) · Freigabe-Cockpit: Settings › Data care

Terminal only - deliberately

  • jico fields — learn field definitions for the AI model - only the count is shown · learns the field catalogue for the AI model (tool jira_fields) - deliberately not displayed anywhere, not in the Approval Cockpit either
  • jico open — open the Approval Cockpit in the browser - and start it if it is not running · opens or starts the Approval Cockpit itself - inside the Approval Cockpit there is nothing left to open
  • jico stop — stop the self-managed instance - for installers before a file swap · for installers (macOS .pkg, Windows .msi) before a file swap - the Approval Cockpit menu has “Quit JiCo” for that
  • jico start — entry point of the app: ask on first run, then icon and Approval Cockpit · runs before the Approval Cockpit: entry point of the app and of the program icon
  • jico menu — JiCo into the menu bar (macOS) or the notification area (Windows); one click shows the menu · creates the icon you open this Approval Cockpit with
  • jico restart — stop the running instance and start it again with the same choice · a Approval Cockpit click would end itself before the answer comes back
  • jico mask reveal — show a resolvable mask in plain text (password required) · password and plain text stay in the terminal - deliberately inconvenient
  • jico nuke — delete EVERYTHING including configuration and token - export the audit first · deletes everything including configuration and token - terminal only, on purpose
  • jico cockpit — Approval Cockpit in the browser (local) · starts the Approval Cockpit itself
  • jico worker — headless worker without panel, channel to the approval UI (R1-R5) · starts the headless worker - no cockpit, no local port; proposals and decisions travel over the channel to the approval UI (#1956)
  • jico console — interactive console — commands without the „jico“ prefix · it is the terminal counterpart of the Approval Cockpit
  • jico bridge — stdio-to-HTTPS bridge for Claude Desktop's local MCP server path, no gateway of its own · started by Claude Desktop itself (claude_desktop_config.json), never run by hand — the ready-made template is under “Add to AI client” in the Approval Cockpit