# RACI chip

Who owns a process or document, as R/A/C/I chips. The letter is spelled out for screen readers and on hover.

- Registry name: `raci-chip` (`@candor/raci-chip`)
- Tier: Pro. Installing it needs a Pro, Premium or Team licence key: the person runs `npx candor-ui key <key>` themselves; never ask for the key in chat or write it to a file.
- Docs: https://candor.themethodic.com/docs/raci-chip

## Install

```bash
npx candor-ui add raci-chip
```

Run `npx candor-ui@latest init` once first (https://candor.themethodic.com/get-started.md). Without the CLI: `npx shadcn@latest add @candor/raci-chip`.
It brings in: know, locale, utils.

## Example

```tsx
"use client"

import { RaciChips } from "@/components/raci-chip"

export default function Example() {
  return (
    <RaciChips
      people={[
        { role: "R", who: "Dana" },
        { role: "A", who: "Priya" },
        { role: "C", who: "Platform team" },
        { role: "I", who: "Support leads" },
      ]}
    />
  )
}
```

## <RaciChips>

Props:

- `people: RaciAssignment[]`: Who holds which role; shown Accountable first, then Responsible, Consulted, Informed.
- `className?: string | undefined`

## Strings (`raciChip`)

The fixed words, English by default. Override any of them under `raciChip` in `<LocaleProvider strings={{ raciChip: { … } }}>`; the table is exported as `raciChipStrings`.

- `ownership`: Ownership
- `R`: Responsible
- `A`: Accountable
- `C`: Consulted
- `I`: Informed
- `assignment`: {role}: {who}
- `role`: {role}:

## Rules for using Candor UI

- Components take plain typed data. Never pass model output as HTML or render it as a link; messages are typed blocks.
- A control that can't be used says why: wrap it in `<Locked reason="…">`, don't just disable it.
- Don't show a value you don't have: leave it out (it renders as —) rather than guess. An estimate is labelled as one.
- Nothing is pre-selected in a decision a person makes, and the agent is named from your app's data, never from model output.
- Your app's words go in `LocaleProvider` (fixed strings) and `TermsProvider` (nouns); entity kinds and agent roles in `EntityKindsProvider` and `AgentRolesProvider`.
