coder / coder/claudecode.nvim

[FEATURE] Expose terminal variable

Open
#309 0 comments 0 reactions 0 assignees View on GitHub
needs-triage
Dominant language
Lua
Stars
3.1k
Forks
216
PR merge metrics
No merged PRs in 30d

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).

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.