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