inconvoai/inconvo/cli
Claude Code and agent skill by inconvoai/inconvo
- community
Checking that the SKILL.md file is still in the repository.
Use when updating an Inconvo agent semantic model or user-context from code context. Covers the full CLI mutation workflow — tables, columns, relations, conditions, policies, virtual tables, computed columns, and user-context — using `inconvo model` and `inconvo connection` commands.
Install
npx vskill@latest install inconvoai/inconvo/cliSKILL.md
Inconvo CLI — Semantic Model Skill
Use this skill when you need to update an agent semantic model or user-context from code context. This repository uses a CLI-only mutation workflow.
Core Rules
- Never edit
.inconvo/**by hand. - Never use local YAML as mutation input.
- Perform every remote change via
inconvo model <group> <command>. - Let the CLI auto-refresh local
.inconvo/snapshots after successful mutations. - Use
--dry-runto verify target resolution; it does not validate payload format. - Use
--jsonfor automation/agent workflows. - For many independent mutations, use
--no-syncon each command and runinconvo model pullonce at the end. - Use
inconvo model pullafter DB schema changes or to recover local snapshots.
Authentication
The CLI resolves credentials in this priority order (highest first):
--api-key/--api-base-urlflags on the commandINCONVO_API_KEY/INCONVO_API_BASE_URLenvironment variables- Repo
.env(INCONVO_API_KEY/INCONVO_API_BASE_URL)
Required Inputs
agentIdfor all mutations (--agent). Read from.inconvo/agents/<slug>/agent.yaml.connectionIdfor schema mutations (--connection). Read from.inconvo/connections/<slug>/connection.yaml.- Connection snapshots expose the platform connection context as
description. - Target identifiers: prefer IDs for stability, names work when unambiguous.
Snapshot Layout
All files are auto-generated. Read them for IDs and current state; never edit directly.
Sync Terms
- Post-mutation sync: automatic refresh of local
.inconvo/files after a successful mutation. - `model pull`: rebuild local snapshots from the platform.
- `connection sync`: ask the platform to re-introspect a connection's database schema. Follow with
model pullwhen you need updated local files.
Standard Workflow
- Read
.inconvo/YAML files to understand current state and collect IDs. - Read code context (schema, routes, UI) to understand intended semantics.
- Plan all mutations, group independent ones for parallel execution.
- Run mutations. Use
--dry-run --jsonwhen target resolution is uncertain. For many independent mutations, add--no-syncto each command and runinconvo model pullonce at the end. - Verify the synced YAML files reflect expected changes.
- If sync fails, run
inconvo model pull --agent <agentId>.
Command Discovery
Full Mutation Reference
| What you want to do | CLI Command | |||
|---|---|---|---|---|
| Enable/disable a table | `model table set-access --access QUERYABLE\ | JOINABLE\ | OFF` | |
| Set table description | model table set-context --context "..." | |||
| Rename / add notes / hide a column | model column update --rename --notes --selected | |||
| Set a column unit | model column set-unit --unit USD | |||
| Create a computed column | model computed create --name --ast <json> --unit | |||
| Update a computed column | model computed update / model computed set-unit | |||
| Delete a computed column | model computed delete | |||
| Toggle an FK relation on/off | `model relation toggle --selected true\ | false` | ||
| Create a manual relation | model relation manual create --source-table --target-table --name --is-list --pair | |||
| Delete a manual relation | model relation manual delete --source-table --relation | |||
| Set row-level condition | model condition set --table --column --field | |||
| Clear row-level condition | model condition clear --table | |||
| Set table access policy | model policy set --table --field | |||
| Clear table access policy | model policy clear --table | |||
| Create static enum | model column enum create-static | |||
| Create dynamic enum | model column enum create-dynamic | |||
| Add user-context field | `model user-context add-field --key --type STRING\ | NUMBER\ | BOOLEAN` | |
| Delete user-context field | model user-context delete-field --key | |||
| Enable user-context | model user-context set-status --status ENABLED | |||
| View connection description | connection get --agent <agentId> --connection <connectionId> | |||
| Update connection description | connection update --agent <agentId> --connection <connectionId> --description "..." | |||
| Pull latest snapshot | model pull --agent <agentId> [--connection <connectionId>] | |||
| Trigger DB resync | connection sync --agent <agentId> --connection <connectionId> |
Connection Metadata
Use connection commands for database-level metadata, not semantic-model changes:
connection update refreshes the local .inconvo/ snapshot for that connection. It does not perform a remote DB rescan; connection sync does that.
Computed Column AST Format
The --ast flag takes a JSON string. Node types and their shapes:
Example — (subtotal - discount) + tax:
Note:--dry-rundoes NOT validate the AST schema — it only resolves the target entity and shows what would be sent. The API validates the AST and returns a detailed Zod error listing valid node shapes if it's wrong.
Relations Workflow
FK relations defined in the database schema are auto-introspected by the platform and should appear in table YAML under outwardRelations with source: FK on the first pull. No manual steps should be required.
Only create manual relations when no FK constraint exists in the DB (e.g. soft references, denormalised keys, or cross-database joins).
Check current relation state:
If FK relations are missing after a pull
Before creating manual relations, ask the user to confirm:
- Do the FK constraints actually exist in the database? Check with the user or inspect the schema — if there are no FK constraints, that explains the absence.
- Does the Inconvo DB user have access to `information_schema`? FK introspection requires read access to
information_schema.key_column_usageandinformation_schema.referential_constraints. If this permission is missing, run aconnection syncafter granting it and then pull again.
Only fall back to manual relations if FKs genuinely don't exist in the schema.
Semantic Model Content Guidelines
Prefer fewer, higher-signal semantics over broad coverage. Default to preserving existing semantics; only mutate entries that are clearly missing, wrong, or materially improved by the code context.
Before adding or changing table context or column notes, ask: "Does this add non-obvious business meaning that is not already captured by the schema, relations, units, renames, computed columns, or existing notes?" If not, skip it.
Keeping each layer focused prevents duplication and improves model quality:
| Layer | What belongs here | What does NOT belong here | |
|---|---|---|---|
| Table context | What the table represents, business domain meaning, important distinctions (e.g. "accounts vs customers"), which questions to direct at this table | Formulas, thresholds, enum values, per-column behavior, or repeated FK details | |
| Column notes | Non-obvious business meaning, valid ranges, business rules, or app-specific interpretation for a field | Restating the name/type, generic timestamps, or FK details already expressed as a relation/condition | |
| Computed columns | The single authoritative place for a derived metric formula (e.g. total = subtotal - discount + tax) | Don't repeat the formula in the notes of input columns | |
| Column rename | Business-friendly display name when the DB column name is unclear (ean → EAN (barcode)) | — | |
| Column selected=false | Sensitive columns that must never be exposed (passwords, tokens, internal flags) | — |
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 93 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingpackages/cli/SKILL.md
Popularity
- Repository stars
- 105
- Repository forks
- 11
- 7-day trend score
- 23
Stars and forks are for the whole GitHub repository, not this skill alone. Refreshed 22 May 2026, 5 months ago.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/inconvoai/inconvo/cli)