lurqrun 0.0.4 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,16 +1,21 @@
1
1
  # lurq
2
2
 
3
- > dynamic index of sdk's, frameworks, and libraries exposed as an mcp server. cli-based installable agent skill, compatible with agentic code assistants and ides, including vscode, cursor, windsurf, claude code, and codex. lurq focuses specifically on objective package recommendations from open-source dependencies.
3
+ > execution-verified answers for AI coding agents. a live index of npm scored from public signals, plus a sandbox that settles the questions metadata can't — exposed as an mcp server, a cli, an http api, and an installable agent skill, compatible with claude code, cursor, windsurf, vscode/copilot, and codex.
4
4
 
5
- lurq is a **companion to your coding agent**: it recommends and explains packages, and your agent writes the code. prioritized for token cost, speed, and retrieval quality, and diagrams a stack you've chosen when prompted. notice: lurq contains a growing, comprehensive database of packages, allowing newer dependencies to be exposed to the agent outside of the training data of the underlying model.
5
+ your agent picks the dependencies now, and it picks them from training data frozen at its cutoff and ranked by how often a name appeared in text not by whether the package is healthy today. so agents install libraries that are abandoned, carry open advisories, or don't exist at all.
6
6
 
7
- **v1 scope:** the javaScript/typeScript web stack (npm) only.
7
+ lurq is what the agent checks first. most of what matters is readable — release cadence, advisories, deprecations, types/tests/docs, bundle cost and lurq ingests all of it daily. the rest isn't readable at all. whether a package installs cleanly, whether it imports without throwing, whether two versions can coexist in one tree: those are only knowable by running them, so lurq runs them in an isolated sandbox and keeps the result.
8
+
9
+ lurq recommends and explains packages; your agent writes the code. responses are compact and token-budgeted, built for an agent's context window rather than a human's screen.
10
+
11
+ **v1 scope:** the javascript/typescript web stack (npm) only.
8
12
 
9
13
  ---
10
14
 
11
15
  ## quick start: connect your agent
12
16
 
13
- > **not public yet.** lurq unlocks at launch. [join the waitlist](https://lurq.run); the steps below are how it'll work once it's live.
17
+ > **lurq is live.** [create a free account](https://lurq.run/sign-up) to generate
18
+ > your API key, then connect your coding agent with the guided installer below.
14
19
 
15
20
  lurq is a **hosted service**: you don't run a database or a sync. get an API key,
16
21
  then run the guided installer:
@@ -20,26 +25,78 @@ npx lurqrun install
20
25
  ```
21
26
 
22
27
  it prompts for your key, validates it, detects your installed assistants
23
- (Claude Code, Cursor, Windsurf, VS Code/Copilot, Codex), and writes a keyed
24
- remote MCP entry:
28
+ (claude code, cursor, windsurf, vscode/copilot, codex), and writes a keyed
29
+ remote mcp entry:
25
30
  `{ "type": "http", "url": "https://api.lurq.run/mcp", "headers": { "Authorization": "Bearer …" } }`.
26
31
  **no database credentials ever touch your machine.** restart your agent afterward.
27
32
 
28
33
  ## what your agent gets (mcp tools)
29
34
 
30
- once installed, the agent can call these tools over MCP. every response is
31
- compact and carries a `dataAsOf` timestamp.
35
+ once installed, the agent can call these over mcp. every response is compact and
36
+ carries a `dataAsOf` timestamp.
32
37
 
33
38
  - **`recommend`**: best current packages for a described need (≤5, scored, with confidence)
34
39
  - **`evaluate`**: full evidence read for one package (scores, advisories, usage guide)
35
- - **`compare`**: 2 to 5 packages ranked by health
40
+ - **`compare`**: 2 to 5 packages ranked head-to-head
36
41
  - **`verify`**: is a package real, healthy, and not risky? (anti-hallucination guard)
37
- - **`diagram`**: a reference-architecture mermaid diagram for a stack (optional)
42
+ - **`compat`**: will these packages actually install together? (peer/engine constraints)
43
+ - **`plan`**: source every slot in a stack at once, checked for cross-slot coherence
44
+ - **`diagram`**: a reference-architecture mermaid diagram for a stack
45
+ - **`usage`**: a package version's *real* public api — exported symbols and signatures extracted from its shipped `.d.ts`, exact to the version and absent from any model's training data. pass the version your model knows and get the precise delta: what was added, removed, renamed, or changed.
46
+ - **`report_outcome`**: what happened after a pick shipped — installed clean, broke the build, resolved the task. the signal only exists for whatever sits inside the decision, so it feeds back into scoring.
47
+
48
+ ## cli
49
+
50
+ the same index, scriptable. every capability is a subcommand:
51
+
52
+ ```bash
53
+ lurq recommend "a form library for react"
54
+ lurq verify jsonwebtoken
55
+ lurq compare date-fns dayjs moment
56
+ lurq compat next react react-dom # do these install together?
57
+ lurq usage zod --known 3.22.4 # what changed in the api since?
58
+ lurq plan ./project.md # a description in, a scored stack out
59
+ lurq serve-http # run it as a rate-limited service of your own
60
+ lurq weights # the exact ranking weights, printed
61
+ ```
62
+
63
+ ## where the evidence comes from
64
+
65
+ two sources, and the distinction is the whole point.
66
+
67
+ **readable** — npm, github, deps.dev, and osv, re-synced daily. downloads, release
68
+ cadence, maintenance, advisories, deprecations, license, bundle cost. this is what
69
+ scoring runs on.
70
+
71
+ **executed** — an isolated sandbox (e2b, with a local driver for trusted work) that
72
+ installs a package version, imports it, and records what happened. co-installing a
73
+ set is how compatibility is established: a successful co-install is positive proof
74
+ two versions coexist, a failure is proof they conflict, and the error is kept as
75
+ evidence. `compat` and `plan` read those edges, which is why lurq can tell you a
76
+ *stack* holds together rather than only that each package looks fine alone.
77
+
78
+ facts of the second kind appear in no changelog and no model's training data, and
79
+ they go stale unless someone keeps re-running the experiment.
80
+
81
+ ## how the ranking works
82
+
83
+ deterministic, and public. no model sits in the ranking path — `recommend` is hybrid
84
+ vector + full-text search over precomputed scores, which is why it's fast, cheap, and
85
+ reproducible.
86
+
87
+ - **health** = maintenance `0.35` · adoption `0.30` · reliability `0.25` · efficiency `0.10`
88
+ - **quality** is a separate, adoption-independent axis — types, tests, docs, changelog,
89
+ dependency count, license, provenance — so a well-built new package isn't buried by an
90
+ old popular one
91
+ - the two blend at a single tunable λ for the default sort
92
+
93
+ every weight lives in [`src/scoring/weights.ts`](src/scoring/weights.ts) and is printable with
94
+ `lurq weights`. an answer an agent acts on is worth nothing if it can't be audited.
38
95
 
39
- ## outreach
96
+ ## outreach
40
97
 
41
- for any inquiries, partnerships, or proposals, contact jaden ryu at jadenryu@gmail.com.
98
+ for any inquiries, partnerships, or proposals, contact jaden ryu at jadenryu@gmail.com.
42
99
 
43
100
  ## license
44
101
 
45
- Apache License 2.0
102
+ Apache License 2.0