kelos-dev / kelos-dev/kelos

Workflow Completeness: kelos-config-update prompt omits inline AgentConfigs, causing recurring convention drift

Open
#766 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

actor/kelos generated-by-kelos kind/bug priority/important-longterm triage-accepted
Dominant language
Go
Stars
331
Forks
40
Avg merge
1d 21h
Merged PRs (30d)
70

Description

Problem

The kelos-config-update TaskSpawner prompt describes its update targets as:

Agent configuration includes:
- `AGENTS.md` / `CLAUDE.md` — project-level conventions
- `self-development/agentconfig.yaml` — shared AgentConfig (agentsMD, plugins, skills, subagents, commands)
- `self-development/*.yaml` — TaskSpawner prompt templates that guide each agent's behavior

The third bullet says "TaskSpawner prompt templates" but does not mention the inline AgentConfig definitions embedded in those same files. Seven out of ten TaskSpawner files define their own AgentConfig with a separate agentsMD block:

File Inline AgentConfig
kelos-workers.yaml kelos-workers-agent
kelos-reviewer.yaml kelos-reviewer-agent
kelos-planner.yaml kelos-planner-agent
kelos-self-update.yaml kelos-self-update-agent
kelos-image-update.yaml kelos-image-update-agent
kelos-fake-strategist.yaml kelos-fake-strategist-agent
kelos-fake-user.yaml kelos-fake-user-agent

When the config-update agent identifies a new project convention (e.g., from PR review feedback), its prompt guides it to update agentconfig.yaml (shared kelos-dev-agent) for project-level changes. But because inline AgentConfigs are not listed as targets, those changes never propagate to the seven inline AgentConfig agentsMD blocks.

Additionally, the "Task-specific changes" section says:

Update the relevant TaskSpawner prompt in self-development/*.yaml

This language suggests updating the promptTemplate field, not the co-located AgentConfig resources. The follow-up instruction — "If a specific agent needs its own configuration, create or update an AgentConfig for it" — implies creating new AgentConfigs, not updating existing inline ones.

Evidence of Recurring Drift

Current state of inline AgentConfigs vs agentconfig.yaml (kelos-dev-agent) and CLAUDE.md:

Convention agentconfig.yaml Workers Reviewer Planner Self-Update Strategist Fake-User
Kubernetes resource comparison Yes No No No No No No
Structural changes → update docs Yes No No No No No No
make update target listed Yes Yes No No Yes Yes Yes
Always improve tests Yes Yes No No Yes Yes Yes

The agentconfig.yaml has been updated with conventions (likely by kelos-config-update itself), but none of the inline AgentConfigs received the same updates. This drift will continue to recur after any future fix unless the config-update agent knows about these inline definitions.

Proposed Fix

Update the kelos-config-update prompt in self-development/kelos-config-update.yaml to:

  1. Explicitly list inline AgentConfigs as update targets in the "Agent configuration includes" section:

    - `self-development/*.yaml` — TaskSpawner prompt templates AND inline AgentConfig
      definitions (agentsMD blocks) that guide each agent's behavior. Many files contain
      both an AgentConfig and a TaskSpawner in the same YAML file.
    
  2. Update the "Classify and apply changes" section to clarify that project-level convention changes must propagate to ALL AgentConfigs, not just the shared one:

    **Project-level changes** (affect all agents):
    - Update `AGENTS.md` and `CLAUDE.md` for general project conventions
    - Update `self-development/agentconfig.yaml` AND all inline AgentConfig
      definitions in `self-development/*.yaml` files. Grep for `kind: AgentConfig`
      to find all of them.
    

Related Issues

  • #601 — describes current AgentConfig drift (symptom)
  • #715 — reviewer-specific AgentConfig gaps (symptom)
  • #761 — planner-specific AgentConfig gaps (symptom)

This issue addresses the root cause: the config-update agent's prompt doesn't know about inline AgentConfigs, so it can't keep them in sync.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Open self-development/kelos-config-update.yaml and inspect the “Agent configuration includes” and “Classify and apply changes” sections. Update the prompt so it names inline AgentConfig agentsMD blocks as targets and requires project-level changes to reach the shared and inline definitions; verify the wording covers files found by grepping for kind: AgentConfig.

Written by the indexing model from the issue text.

Assessment

Tech stack
yaml
Domain
tooling
Issue type
Documentation
Difficulty
1/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.