ai: blocktank lsp api plugin + agent control interface#860
Merged
Conversation
916f93c to
c3fc52e
Compare
142abce to
eb2fe0d
Compare
66285e8 to
2e069ad
Compare
jvsena42
reviewed
Mar 27, 2026
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Member
|
Can I test it already? |
Collaborator
Author
Yes, should be ready 👍🏻 |
jvsena42
reviewed
Apr 17, 2026
jvsena42
requested changes
Apr 17, 2026
Member
jvsena42
left a comment
There was a problem hiding this comment.
probably should publish the plugin?
Getting this error from /doctor
blocktank-api@blocktank-api: Plugin blocktank-api not found in marketplace blocktank-api
settings.json:
"enabledPlugins": {
"plannotator@plannotator": true,
"blocktank-api@blocktank-api": true
}
Member
|
it is not finding the plugin, checking... |
Member
|
A good way to check the setup is cloning the project and see if Claude recognizes the plugin |
Collaborator
Author
jvsena42
approved these changes
Apr 20, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR:
./lspCLI wrapper for calling the Blocktank API from the repo rootDevToolsProviderContentProvider (debug builds only) for programmatic invoice creation viaadb shell content callpay-invoices.shautomation script for bulk invoice creation, payment, and block mining.claude/install-plugins.shas the single setup entry point for bundled Claude Code pluginsDescription
Blocktank LSP API Plugin for Claude Code - 142abce
Introduces a Claude Code plugin at
.claude/plugins/blocktank-api/that gives Claude knowledge of the Blocktank LSP REST API (18 endpoints) and provides shell scripts for calling it. The plugin includes a skill with endpoint tables, common workflows (channel purchase, CJIT, force close), and state machine documentation.Agent Control Interface (ACI) - 142abce
A debug-only
DevToolsProviderContentProvider allows creating bolt11 invoices on the app's LDK node viaadb shell content call, returning the result synchronously as JSON in a Bundle. Commands accept typed JSON args via--arg, with each command defining its own@Serializabledata class for type-safe deserialization with defaults.This MVP provides the basis for demonstrating 2-way communication between AI dev agents and the Bitkit Android App. Future implementations could expand the set of supported methods through this command interface, as the internals of the implementation were designed with extensibility in mind.
A potential 2nd layer could provide agent-to-app control by deep-linking directly to different routes within the app, optionally passing args to fill-in screen details such as route params or values for form inputs.
Plugin install script - 8da9f5a
.claude/install-plugins.shiterates every subdirectory under.claude/plugins/with a validplugin.jsonand either installs the plugin into user scope or runsclaude plugin updateif already installed. The committed.claude/plugins/.claude-plugin/marketplace.jsonis the source of truth for what Claude Code resolves. No project-scopeenabledPlugins/extraKnownMarketplacesare committed because Claude Code 2.1.112 doesn't auto-register directory-source marketplaces — which produced a red-icon error in the/pluginsUI in earlier iterations.Adding a new plugin later is a drop-in: new dir + one marketplace entry + one bullet in the root README — script and prose need no edits.
Preview
lsp_1.5x.mp4
QA Notes
0. Setup the plugin
Also confirm the
/pluginsUI in Claude Code showsblocktank-apienabled with no red-error icon, and that invoking/lspin a Claude Code session loads the skill.To verify update-capability: edit any file under
.claude/plugins/blocktank-api/skills/lsp/and re-run./.claude/install-plugins.sh— plugin should remain enabled with the updated source reflected.1. Verify
./lspwrapper2. Verify invoice creation via claude code
prerequisite: debug build with wallet + open channel actively running on emulator
3. Verify full automation
prerequisite: open channel with inbound capacity