Add get_exports tool for symbol discovery - #50
Conversation
|
Hi @vitalis, thank you for the PR! We have discussed this in the past and we have debated if this is worth compared to reading the source, something models are well trained to deal with, which they can also grep, and may potentially even give them more context. |
|
And if we want to go down this route, we should also answer:
As far as use cases go, I can see this being useful when the agent gets an |
|
Hey @josevalim .. long time.. :) This is from official Expo docs: (https://docs.expo.dev/versions/latest/sdk/ui/swift-ui/) There are many TypeScript types that are not documented.. and it works amazing with the Unfortunately the js/ts ecosystem is far far away from Elixir's .. |
|
@vitalis can you please do the following changes?
|
|
@josevalim, yes, not a problem.. I'll push the changes in a day or two |
fe1bd27 to
3ba3572
Compare
3ba3572 to
88d636e
Compare
|
@josevalim updated, tnx |
- New MCP tool `get_exports` to list all exported symbols from a module - Returns export names with line numbers, sorted by line - Supports local files, npm dependencies, and subpath exports - CLI command: `tidewave exports <module>` - Includes integration test with comprehensive fixture covering all export types (constants, variables, functions, classes, interfaces, types, enums, namespaces)
88d636e to
479b265
Compare
Signed-off-by: José Valim <jose.valim@dashbit.co>
|
Looks excellent now! I will discuss with team and decide how to move forward! |
|
Oh, there is another approach we can take here, which is to merge this with Which could be retrieved as: |
|
Then we have a separate question in which if we should support similar for the other languages. Python could have a similar API to the JS one. For Elixir and Ruby it is a slightly separate discussion, as they don't really have file based APIs. |
Summary
get_exportsto list all exported symbols from a moduletidewave exports <module>Example
Test plan
bun run type:checkpassesbun run lintpassesbun testpasses (includes new integration test with comprehensive fixture)