[ACP] New Chat loses thread access; Agent mode lacks Space mutation guidance
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 144
- Forks
- 18
- Avg merge
- 2d 6h
- Merged PRs (30d)
- 43
Description
Environment
- Huabu v0.9.0
- macOS
- External Codex ACP (
codex-acp) v1.1.5
Issue A: External ACP New Chat replaces the current thread pointer
Steps to reproduce
- Connect an external ACP chat and start a conversation (thread A).
- Click New Chat / 新建聊天.
- Try to return to thread A.
Actual behavior
The active thread pointer is replaced by the new chat. The UI has no conversation history list, back button, or other navigation entry for the previous thread. The old thread's local history still exists, but it cannot be recovered from the Huabu UI.
Expected behavior
Creating a new chat should preserve the previous thread and provide a visible way to open it again (for example, a conversation list, history/search, or back navigation). The UI should not make an existing thread appear lost.
Issue B: External Codex ACP Agent selection is presented like ordinary chat
Steps to reproduce
- Connect an external Codex ACP session.
- Select Agent.
- Ask the agent to create or modify content intended for the Huabu canvas.
Actual behavior
The session becomes/appears to be an ordinary chat. Huabu does not clearly expose or explain the available Space mutation tools, and there is no onboarding hint explaining how canvas mutations are invoked. A user can reasonably assume that selecting Agent will automatically create canvas content, then see no canvas result.
Expected behavior
When Agent is selected, Huabu should explicitly provide or surface the relevant Space mutation tools and a short guide (what each mutation does, how to invoke it, and where the result appears). If Agent mode is intentionally ordinary chat, the UI should state that clearly instead of implying automatic canvas creation.
Diagnostics
The log keyword AcpAgentClient is closed may appear during this workflow. I am including it as a useful search term, not asserting that it is the root cause of both issues.
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
Reproduce both workflows in the issue: create a new external ACP chat, then select Agent and request a canvas change. Search the codebase for the external ACP chat entry point, thread pointer/history handling, Agent selection, Space mutation tools, and the log keyword "AcpAgentClient is closed". Done means the earlier thread remains reachable and Agent mode clearly exposes or explains its canvas mutation behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- ai, frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100