hermes - 💡(How to fix) Fix [Feature]: Task tagging / structured metadata for kanban tasks

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Root Cause

All other blocked tasks — those waiting on an API, on human input, or on a dependency — should be left alone. Without tagging, the dispatcher cannot distinguish between a task that is blocked because it should run at night vs. a task that is blocked because it cannot proceed yet.

Fix Action

Fix / Workaround

This matters when an automated dispatcher or cron worker needs to select a specific subset of tasks based on task characteristics, not just status. For example:

All other blocked tasks — those waiting on an API, on human input, or on a dependency — should be left alone. Without tagging, the dispatcher cannot distinguish between a task that is blocked because it should run at night vs. a task that is blocked because it cannot proceed yet.

Today, the only workaround is encoding tags as a structured prefix in the body field (e.g., Tags: run-at-night), which is fragile and not machine-filterable at the kanban layer.

RAW_BUFFERClick to expand / collapse

Problem

Currently, kanban tasks have a single free-text body field and a set of fixed attributes (assignee, priority, status, skills, etc.). There is no way to attach structured, filterable metadata to a task — for example, tags like run-at-night, owner:backend, or blocked:api-down.

This matters when an automated dispatcher or cron worker needs to select a specific subset of tasks based on task characteristics, not just status. For example:

Use case — time-gated task execution:

A cron job fires every night at a fixed time. It should only pick up tasks that are:

  1. Currently blocked (not ready to auto-run during the day)
  2. Tagged as run-at-night (explicitly marked as night-worker eligible)

All other blocked tasks — those waiting on an API, on human input, or on a dependency — should be left alone. Without tagging, the dispatcher cannot distinguish between a task that is blocked because it should run at night vs. a task that is blocked because it cannot proceed yet.

Today, the only workaround is encoding tags as a structured prefix in the body field (e.g., Tags: run-at-night), which is fragile and not machine-filterable at the kanban layer.

Proposed Solution

Add a tags field to tasks — a list of string tags that are:

  1. Set at create time: hermes kanban create "Fix auth bug" --tags "owner:backend,night-only"
  2. Filterable at list/dispatch time: hermes kanban list --tags "night-only"
  3. Visible in task output (JSON and human): included in hermes kanban show
  4. Editable: hermes kanban edit t_xxxx --tags "+night-only,-triage" (add/remove tags)

Alternative Approaches Considered

Abuse --skill as tags: Skills are meant to influence worker context, not serve as kanban-level filters. Mixing the two concerns would pollute the skill namespace and confuse dispatch logic.

Structured body prefix: Encoding tags as Tags: run-at-night in the body works today as a manual convention, but requires every consumer (cron, daemon, human) to parse free text. Not robust.

Priority field: Priority is numeric and meant for ordering, not categorisation. Using it to encode meaning (e.g., priority=99 means "night only") is a hack that loses semantics.

Priority

P2 — enables more sophisticated dispatcher and worker patterns without workarounds.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

hermes - 💡(How to fix) Fix [Feature]: Task tagging / structured metadata for kanban tasks