[FEATURE] Expose terminal variable
- Lingua principale
- Lua
- Stelle
- 3.1k
- Fork
- 216
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
## Feature Description
When we call ClaudeCode, it creates a terminal
` local terminal_ok, terminal = pcall(require, "claudecode.terminal")`
but the only way to access it is via user commands.
Feature would be to expose it.
## Use Case
Anyone who wants to make any code interacting with claude API.
Example:
https://github.com/ilan-schemoul/nvim-config/commit/e95797a601958929acea7f60641e09a481fd39ab#diff-7a87cf1458c4f35acd87b922d094f8f80580bdbf2fee6b36dc332db086e1b289R30
User commands are not to be made for programatic interactions as the name suggests.
If I require("claudecode/terminal") it spans up another terminal if I do toggle or whatever.
## Proposed Solution
require("claude").get_terminal() (or get_terminal_interface()) would return the created terminal
## Alternatives Considered
workaround is calling user commands. It sucks, you are limited compared to API, you have no LSP helping you, it's weird and you have to escape characters sometimes (or i think you can provide with { args = txt } the text and no need to escape. but anyway it's confusing).
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
Direzione di ricerca
Start by tracing where ClaudeCode creates and stores the terminal, including the claudecode.terminal module referenced in the issue, and compare it with the existing user-command entry points. Done means a public accessor returns the already-created terminal for programmatic use without creating a second terminal; verify the existing terminal behavior remains unchanged.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- lua
- Ambito
- tooling
- Tipo di issue
- Funzionalità
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 62/100