Claude Code Skill
Install the HARi skill in Claude Code and manage your entire CRM through conversation. Create contacts, build pipelines, send emails, configure automations — Claude knows the full API.
Download
Section titled “Download”Size: 35 KB · Released: 20 April 2026
What’s in the skill
Section titled “What’s in the skill”9 reference files covering every part of the HARi API. Claude loads only what’s needed per conversation.
| File | Covers |
|---|---|
SKILL.md | Main entry point — auth, routing, safety gates, core rules |
records.md | CRUD operations, filtering, search, restore, purge, audit log |
schema.md | Entities, fields (25 types), relations, solutions |
workflows.md | Automation, pipelines, views, process templates, scoring |
communications.md | Email, inbox, mailboxes, templates, snippets, embed forms |
dashboards.md | Charts, goals, activity feed, data hygiene, notifications |
ai.md | AI enrichment, AI search, chat, next actions, recap |
admin.md | Users, API keys, webhooks, integrations, GDPR, billing |
advisory.md | Guided setup, gap analysis, UI navigation, user-level detection |
Installation
Section titled “Installation”Step 1 — Download
Section titled “Step 1 — Download”Click the download button above, or use the terminal:
curl -L https://haricrm.com/downloads/hari-claude-skill.zip -o hari-skill.zipStep 2 — Extract to your project
Section titled “Step 2 — Extract to your project”Unzip into the .claude/skills/hari/ folder at the root of your project. Claude Code discovers skills in this directory automatically.
# Navigate to your project rootcd ~/my-project
# Create the skills directory and extractmkdir -p .claude/skills/hariunzip hari-skill.zip -d .claude/skills/hari/Your project should look like this:
my-project/ ├── .claude/ │ └── skills/ │ └── hari/ ← skill lives here │ ├── SKILL.md │ ├── records.md │ ├── schema.md │ ├── advisory.md │ └── ... (9 files total) ├── src/ └── ...Step 3 — Use it
Section titled “Step 3 — Use it”Open Claude Code in your project and type /hari to invoke the skill directly, or just ask Claude anything about your CRM data — it will activate automatically.
$ claude
> List my top 10 contacts by deal value
Reading .claude/skills/hari/SKILL.md...Reading .claude/skills/hari/records.md...
Here are your top 10 contacts:1. Sarah Chen — HK$450,000 (3 opportunities)2. James Wong — HK$380,000 (2 opportunities)3. ...What you can ask Claude
Section titled “What you can ask Claude”| Category | Example prompts |
|---|---|
| Manage records | ”Create a contact for Alice at Acme Corp”, “Show me all open deals above HK$100k” |
| Build your data model | ”I need to track projects with tasks”, “Add a money field for budget” |
| Set up automations | ”When a deal reaches Proposal stage, notify the manager” |
| Email & templates | ”Send a follow-up to all contacts I met last week”, “Create a PDF quote template” |
| Dashboards | ”Show me pipeline value by stage”, “How many new contacts this month?” |
| AI enrichment | ”Enrich this company with AI”, “Fill in missing data for all new contacts” |
Prerequisites
Section titled “Prerequisites”- Claude Code — Available as CLI, desktop app, or IDE extension. Get Claude Code
- A HARi CRM account — The skill needs your credentials or API key. Start free trial
Changelog
Section titled “Changelog”v1.16.0 — 20 April 2026
Section titled “v1.16.0 — 20 April 2026”- Entity sort_order and batch reorder API — new
PUT /api/schema/entities/reorderendpoint accepts an ordered array of entity names and setssort_orderon each. Entities are now displayed in sidebar and schema lists bysort_order ASC, name ASC. Individual entities can also be updated viaPUT /api/schema/entities/{name}withsort_orderfield.
v1.15.0 — 18 April 2026
Section titled “v1.15.0 — 18 April 2026”- Comprehensive solution export/import documentation — the Solutions section in schema.md is now a full operational guide: what gets exported (entities, fields, relations, forms, views, BPFs, workflows, charts, templates, seed data), step-by-step cross-tenant migration workflow (export → ZIP → import), what happens during import (new entities created, existing entity/field metadata updated, dependencies auto-detected), version management (semver, upgrade vs downgrade), and troubleshooting table for common errors. Previously the section only listed endpoint names without explaining the workflow or edge cases.
v1.14.0 — 17 April 2026
Section titled “v1.14.0 — 17 April 2026”- New field type
secret— stores TEXT, renders masked in edit (password input + Eye/EyeOff reveal toggle) and display (fixed 9-dot mask + Show/Copy buttons with 2s confirmation). Not encrypted — presentational mask only. For API keys, tokens, passwords that a user types into a record. - Field display style picker (
options.display_style) — Schema Editor UI now writes a per-field style key that the renderer resolves in orderoptions.widget→options.display_style→ default. Options:select→dropdown/cards/pipeline/radio,multiselect→checkboxes/chip_grid/tags,percent→number/progress_bar,boolean→checkbox/toggle. ShipsCardSelectFieldwired to thecardskey; radio and toggle widgets fall through to defaults until the widget pairs are added. - Visible-when condition builder — Form Editor gets an Eye/EyeOff icon on every tab row and section header. Inline builder: field picker → operator → value. 10 operators:
eq,neq,gt,lt,gte,lte,contains,not_contains,is_null,is_not_null. Numeric operators wrap both operands withNumber()and returnfalsewhen either side isNaN— so rules work correctly even when form values arrive as strings.in/ninremain valid in stored JSONB but aren’t yet exposed in the builder UI. - Formula field editing in the Schema Editor —
type: 'formula'fields now show a dedicated formula textarea plus a format picker (currency/percent/integer/text) next to the existing relation-context picker. Stored asoptions.formula+options.formula_format. No more hand-editing the JSON options blob.
v1.11.0 — 16 April 2026
Section titled “v1.11.0 — 16 April 2026”- Two new built-in sidebar components layered on the v1.10.0 sidebar DSL:
ActivityTimeline— condensed 3–5 item vertical timeline of the record’s most recent activity entries (coloured dot + summary + relative timestamp). Clampedlimit1–10.RelatedRecordsList— inline list of records from a child entity filtered by FK, with count badge and “View all” link when truncated. Props:entity_name,relation,limit,display_field.
v1.10.0 — 16 April 2026
Section titled “v1.10.0 — 16 April 2026”- Record page right sidebar — forms can now declare a
layout.sidebarblock with orderedcells[](bare field name,{type:"field"},{type:"heading"},{type:"spacer"},{type:"component"}). Built-in sidebar componentKeyFactsrenders a compact read-only label/value stack reusing the same display components as the main form (colored pills, currency formatting, relation links). Width is clamped 240–360 px (default 280). Desktop-only; mobile falls back to single column.
v1.9.0 — 16 April 2026
Section titled “v1.9.0 — 16 April 2026”- Relation-aware formula fields — formulas can now reach beyond the current record’s scalars. Declare
options.formula_context: ["transactions"]and reference related records directly:sum(pluck(where(transactions, 'deal_stage', 'eq', 'closed'), 'prix_bien')). Works for bothbelongs_torelations (exposed as an associative array —company.name) and reversehas_many(exposed as a list). Naive plural matching acceptstransaction,transactions,transactiones. Backend batches one query per relation per list/get call — never N+1. - Collection helpers in formulas — new read-only functions in Symfony ExpressionLanguage:
count,sum,min,max,avg,first,last,pluck(arr, field),where(arr, field, op, value)with opseq · neq · gt · gte · lt · lte · in · nin · is_null · is_not_null · contains, plustoday_minus_days(n)for date-range comparisons. Safety caps: max expression length 2000 chars, max related rows 5000 per relation, related records filtered to_state = 0. - Rewritten formulas reference —
docs/reference/field-types.md §4now matches the actual engine (Symfony ExpressionLanguage, bare field-name identifiers, no curly braces), documents collection helpers, relation-context syntax, safety limits, and known gaps (no reactive preview, no dependency-ordering between formulas, no writable computed values, no irregular-plural matching).
v1.8.0 — 16 April 2026
Section titled “v1.8.0 — 16 April 2026”- Section title size — sections now accept a
label_sizeproperty (100/125/150/175/200) that scales the section label as a percentage of the default 12px. Configurable visually in the Form Editor alongside colour / icon / collapse / divider. - Comprehensive Form Layouts reference —
schema.mdrewritten with a full section-presentation reference table, brand-aligned colour palette, complete lucide icon list, field-entry formats (subgrids, components, spacers), full-layout PUT pattern for updates, and per-user personalisation flow. Claude sessions can now drive the Form Editor end-to-end from the skill without external context.
v1.7.0 — 16 April 2026
Section titled “v1.7.0 — 16 April 2026”- Section dividers — sections now accept a
dividerproperty ("none","line","thick") that renders a visible separator above the section on the record page. Thick dividers are tinted with the section’s colour when one is set. Configurable visually from the Form Editor.
v1.6.0 — 16 April 2026
Section titled “v1.6.0 — 16 April 2026”- Form layouts — documented the complete endpoint set (
GET/POST /api/schema/entities/{entity}/forms,PUT /api/schema/forms/{id}, per-user personalization) so Claude can create and update detail/create/quick_view forms directly. - Section presentation metadata — sections now accept optional
color(hex left-border accent),icon(lucide name), andcollapsed(absent = not collapsible; present = click-to-toggle). Documented supported icon set and validation rules. header_image_fieldon entities — documented how to pin an image/file field as the hero thumbnail on the record detail page. Validation: referenced field must exist and be of typeimageorfile.- Entity update endpoint — corrected from
PATCHtoPUT /api/schema/entities/{name}and expanded the body spec.
v1.5.0 — 15 April 2026
Section titled “v1.5.0 — 15 April 2026”- Phone field country code selector — phone fields on embed forms now show a dropdown with 19 country codes (flag + dial code). Default auto-detected from browser locale. Configurable per field via
options.default_country_code. - Embed form field-level validation errors — submissions now return per-field error details instead of a generic message. Frontend shows inline errors with red highlighting.
- Embed form field type docs — documented all field type rendering behaviors (phone, select, email, boolean, textarea) and validation error response format.
- Schema field types cleaned up — removed internal DB column types from skill reference, replaced with API-relevant behavior notes.
- Added
versionfield to SKILL.md frontmatter for tracking.
v1.4.0 — 15 April 2026
Section titled “v1.4.0 — 15 April 2026”- Find-or-Create pattern —
for_eachnow supportselse_actionsfor zero-match branching - New
update_triggeraction — write back to the triggering record from insidefor_each create_recordnow returns the new ID, chainable via{{last_created_id}}- New placeholder namespaces:
{{trigger.field}},{{item.field}}insidefor_each - Complete action types reference with JSON schemas and recipes
- Fixed
for_eachplaceholder resolution (sub-actions now resolve against iterated row)
v1.3.0 — 13 April 2026
Section titled “v1.3.0 — 13 April 2026”- Added 25 field types including money/multi-currency support
- Added UI navigation discovery (API-first, never hardcoded)
- Added currency settings and exchange rate endpoints
- Improved advisory with disambiguation for ambiguous terms
v1.2.0 — 10 April 2026
Section titled “v1.2.0 — 10 April 2026”- Added communication safety gate for outbound actions
- Added solution gate for schema changes
- Added embed forms and OAuth endpoints
v1.0.0 — 1 April 2026
Section titled “v1.0.0 — 1 April 2026”- Initial release with full CRUD, schema, workflows, AI, dashboards