[FEATURE] Expose terminal variable
- Langage dominant
- Lua
- Étoiles
- 3.1k
- Forks
- 216
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
## 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).
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Piste de recherche
Commencez par suivre où ClaudeCode crée et stocke le terminal, notamment le module claudecode.terminal référencé dans l’issue, et comparez cela aux points d’entrée existants de user-command. La tâche est considérée comme terminée lorsqu’un accessor public renvoie le terminal déjà créé pour une utilisation programmatique sans créer de second terminal ; vérifiez que le comportement du terminal existant reste inchangé.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- lua
- Domaine
- tooling
- Type d'issue
- Fonctionnalité
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- Calme
- Clarté
- Plutôt claire
- Accessibilité débutants
- 62/100