Kensa

Features

Settings

Updated for v0.16.0Edit on GitHub

Project-scoped configuration. Because settings that affect the data (field schema, badge styling) are written into the project's .tms/ folder, they're committed to git and shared with the whole team - not stuck in one machine's local config.

Test Cases (fields)

Edit the custom-field schema (.tms/schema.yaml):

  • Add / edit / delete custom fields.
  • Field key is validated and immutable after creation.
  • Eight field types; a required flag; default values.
  • Options for select / multiselect entered as a newline-separated list.
  • Changing a field's type drops now-incompatible options and resets incompatible defaults.
  • Deleting a field preserves existing case values as legacy data.

For the full structure editor (system fields, live preview, migrations), see schema-and-fields.md.

Structure

The split-screen schema designer for both system and custom fields, with live preview and non-destructive migrations. Covered in detail in schema-and-fields.md.

Badges

Configure colored pill and emoji badges (.tms/badges.yaml) so priority / status / custom-select values render as consistent chips for every contributor and for the CLI. For built-in and select fields, the value is chosen from a dropdown. No badges exist by default - the file is created when you add the first one.

Maintenance

  • Empty trash - purge .tms/trash/.
  • Case ID integrity - scan for filename ↔ frontmatter id mismatches and repair them by renaming files (never rewriting frontmatter, preserving CLI ↔ UI parity).

Agent config

Editors for the AI agent configuration files - CLAUDE.md, .mcp.json, and whitelisted .claude/ files - with MCP server templates (Confluence, Notion, Jira, GitHub, Linear) you can add with one click and fill in your token. Raw files open in a Monaco editor with syntax highlighting and JSON validation; editing is confined to the whitelist.

Theme

Light / dark toggle (Cmd/Ctrl+Shift+L). The terminal and code editor follow the chosen theme; the cold-start splash matches it from the first frame.