I built a CLI for uploading documents and querying them with an LLM agent that uses search tools rather than stuffing everything into the context window. I recorded a demo using the CrossFit 2025 rulebook that shows how this approach compares to traditional RAG and direct context injection[1].
The core insight is that LLMs running in loops with tool access are unreasonably effective at this kind of knowledge retrieval task[2]. Instead of hoping the right chunks make it into your context, the agent can iteratively search, refine queries, and reason about what it finds.
The CLI handles the full workflow:
```bash
trieve upload ./document.pdf
trieve ask "What are the key findings?"
```
You can customize the RAG behavior, check upload status, and the responses stream back with expandable source references. I really enjoy having this workflow available in the terminal and I'm curious if others find this paradigm as compelling as I do.
Considering adding more commands and customization options if there's interest. The tool is free for up to 1k document chunks.
Source code is on GitHub[3] and available via npm[4].
Would love any feedback on the approach or CLI design!
[1]: https://www.youtube.com/watch?v=SAV-esDsRUk [2]: https://news.ycombinator.com/item?id=43998472 [3]: https://github.com/devflowinc/trieve/blob/main/clients/cli/i... [4]: https://www.npmjs.com/package/trieve-cli
jlarocco•1h ago
I have the same critique for a lot of AI tools. We're replacing the meaningful parts of content creation and consumption with a computer so we can pass it off as having created or understood it ourselves. It just seems pointless.
skeptrune•1h ago
However, I also want to flag that the cool part about the agent loop is that it feels less like skimming since you can watch the LLM search, evaluate results, search again, evaluate results, and repeat until it's happy that it has enough information to actually answer.
behnamoh•25m ago
dingnuts•17m ago
Understanding a concept means you are able to use it in higher order reasoning. Think about the rote practice necessary to build intuition in mathematics until you're able to use the concept being learned for the next concept which in turn relies on it.
Once that intuition is built, that's understanding.