lightninglabs / lightninglabs/LangChainBitcoin
enhancement: fill in additional Bitcoin/LN tools
- Dominant language
- Python
- Stars
- 143
- Forks
- 19
- PR merge metrics
- No merged PRs in 30d
Description
As is, we can easily integrate any of the APIs that are exported by lnd defined here: https://lightning.engineering/api-docs/api/lnd/index.html.
This includes normal LN node operation, but also introspecting into the channel graph, and also [fetching and parsing blocks](https://lightning.engineering/api-docs/category/chainkit-service).
Here're some additional tools we should start to expose:
- [ ] Checking status of invoices: https://lightning.engineering/api-docs/api/lnd/invoices/lookup-invoice-v2
- [ ] Tracking LN payment status: https://lightning.engineering/api-docs/api/lnd/router/track-payment-v2
- [ ] Wallet activities like creating+funding+signing PSBTs: https://lightning.engineering/api-docs/category/walletkit-service
- [ ] Making on chain payments: https://lightning.engineering/api-docs/api/lnd/lightning/send-coins
- [ ] Scanning for confirmed transactions: https://lightning.engineering/api-docs/api/lnd/lightning/get-transactions
- [ ] Watching for relevant on chain events: https://lightning.engineering/api-docs/category/chainnotifier-service
- [ ] Fetching Bitcoin blocks + headers: https://lightning.engineering/api-docs/category/chainkit-service
* We should parse the returned data into nice dicts/json so the model can interact with it directly.
- [ ] Opening + closing channels: https://lightning.engineering/api-docs/api/lnd/lightning/open-channel
- [ ] Extracting the LN graph: https://lightning.engineering/api-docs/api/lnd/lightning/describe-graph
- [ ] Looking up info for a given node: https://lightning.engineering/api-docs/api/lnd/lightning/get-node-info
- [ ] Looking up chan info: https://lightning.engineering/api-docs/api/lnd/lightning/get-chan-info
- [ ] Obtaining a node's forwarding history: https://lightning.engineering/api-docs/api/lnd/lightning/forwarding-history
- [ ] Updating routing policy for channels: https://lightning.engineering/api-docs/api/lnd/lightning/update-channel-policy
- [ ] Estimating on chain fees: https://lightning.engineering/api-docs/api/lnd/lightning/estimate-fee
- [ ] Baking macaroons for other agents: https://lightning.engineering/api-docs/api/lnd/lightning/bake-macaroon
* Can be used to give other agents scoped access to the set of tools, eg: only read only operations.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the existing exported LND API integrations and the linked LND API documentation for each unchecked operation. The work is complete when the selected Bitcoin and Lightning tools are exposed, with block data parsed into dictionaries or JSON where specified; the issue does not name files or tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- blockchain, python
- Domain
- api, blockchain
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100