MoonshotAI / MoonshotAI/kimi-code
Option to render the plan box title at the bottom
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 7.5k
- Forks
- 1.2k
- Avg merge
- 11h 53m
- Merged PRs (30d)
- 350
Description
Feature request: option to render the plan box title at the bottom
What I'd like: a way to display the plan box title (plan: <file>.md) at the bottom of the box instead of the top.
Currently, when a plan is approved, the box renders like this — title at the top:
Current plan · Approved
┌ plan: catwoman-patriot-forge.md ──────
│ ...plan content...
└───────────────────────────────────────
I'd prefer the filename title on the bottom border:
Current plan · Approved
┌───────────────────────────────────────
│ ...plan content...
└── plan: catwoman-patriot-forge.md ────
Where this is implemented: the plan box has a dedicated renderer in
apps/kimi-code/src/tui/components/messages/plan-box.ts
(PlanBoxComponent.render()). The title is drawn on the top border only:
const title = this.buildTitle(horzLen);
const trailingDashLen = Math.max(0, horzLen - visibleWidth(title));
const top = indent + paint('┌') + paint(title) + paint('─'.repeat(trailingDashLen)) + paint('┐');
const bottom = indent + paint('└' + '─'.repeat(horzLen) + '┘');
The bottom line is currently plain dashes, so moving the title there is a small, localized change affecting only the plan box (not other TUI boxes).
Suggestion: expose a config/theme option (e.g. title_position = "top" | "bottom"), or simply default the plan box title to the bottom. Happy to open a PR if a maintainer indicates a preferred approach.
Environment: kimi-code v0.38.0 (single-binary install), Linux.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in apps/kimi-code/src/tui/components/messages/plan-box.ts at PlanBoxComponent.render() and inspect how configuration or theme options are defined elsewhere in the TUI. Confirm the intended title-position behavior with the maintainer, then verify that the plan box renders the title correctly in each supported position without changing other TUI boxes.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 78/100