[Enhancement] Add One-Click 'Copy Code' Button to Output Blocks
Open
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 4.7k
- Forks
- 719
- Avg merge
- 4h 30m
- Merged PRs (30d)
- 83
Description
🌟 Feature Request: Copy Code Button
Current Pain Point
When MonkeyCode generates code blocks in the chat response, it is difficult and tedious for users to copy them.
- Selection issues: Double-clicking or dragging to select large blocks of code is cumbersome, especially for long scripts.
- Scrolling: Navigating to copy text while the scrollbar moves is a bad UX.
Suggestion
Add a One-Click Copy Button (Icon) to the top-right corner of every code block.
- Icon: Use a standard clipboard icon (📋 or
Copy). - Feedback: Change icon to
Check(✅) or tooltip "Copied!" briefly after clicking.
Why this matters
- Efficiency: Developers frequently copy-paste code to local editors or terminals to test. This is a high-frequency action.
- Standard Practice: Almost all modern AI coding tools (Cursor, GitHub Copilot, Claude) include this as a baseline feature.
Mockup Idea
+---------------------------------------+
| Python [📋 Copy] |
+---------------------------------------+
| import os |
| ... |
+---------------------------------------+
Contributor guide
No contributing guide indexed for this repository
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
No file or test is named; start by locating the chat response renderer for generated code blocks and inspect how their header and actions are built. Add a copy action with brief copied feedback, then verify it works for every output code block and does not alter the displayed code.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 65/100