Skip to content

Feature/opengraph#23

Merged
ivncmp merged 22 commits into
mainfrom
feature/opengraph
May 31, 2026
Merged

Feature/opengraph#23
ivncmp merged 22 commits into
mainfrom
feature/opengraph

Conversation

@ivncmp
Copy link
Copy Markdown
Owner

@ivncmp ivncmp commented May 30, 2026

No description provided.

ivncmp added 8 commits May 27, 2026 18:30
Add llm.ts module that uses DProxyClient from @dtoolkit/sdk to make LLM
calls without coupling to any specific provider. Config section (llm.dproxyUrl,
dproxyToken, provider, model) added to schema, configure wizard, status,
and start banner. Calls run clean (no memory/context injection) with
configurable defaults for compact Phase 2.

Also: silence Fastify request logs (banner covers it), remove duplicate
dashboard log.
Add process.ts that reads unprocessed conversation messages, sends them
to the LLM via dproxy SDK, extracts entities + facts, and stores them
in the database. Integrates into compact as a new 'process' step that
runs before dedup and tiers.

- CLI: --process flag for dbrain compact, detailed dry-run output
- Cron: auto-includes process step when LLM is configured
- MCP: compact tool accepts 'process' step
- REST: POST /compact accepts 'process' step
- API: conversations endpoint now returns processed_count
- Dashboard: progress bar on conversation cards + processed badges on messages
Init now asks for cron schedule (default 0 3 * * *) and dproxy
connection (URL, token, provider, model). Non-interactive mode
supports DBRAIN_COMPACT_SCHEDULE, DBRAIN_DPROXY_URL,
DBRAIN_DPROXY_TOKEN, DBRAIN_LLM_PROVIDER, DBRAIN_LLM_MODEL env vars.
…n prompt

Add delete/merge modal to entity cards and detail view — when deleting
an entity with facts, choose another entity to absorb them.

DELETE /entities/:id?mergeInto=<targetId> moves facts before archiving.

Also: stricter entity extraction rules in process prompt (no minor
mentions, no sensitive data), fix api() sending Content-Type on
bodyless requests (Fastify 400).
Accent-insensitive search: "ivan" now matches "Iván", "cafe" matches
"café". Migration v3 rebuilds the FTS index for existing brains.
… projects

Add update_project and update_doc MCP tools (wiring to existing service
layer). Extend update_task with a project parameter to move tasks between
projects (removes from source BACKLOG.md, appends to target, re-indexes
both). Update REST route, SDK client, docs, and landing site to match.
Click on the project name or description to edit inline. Hover shows
a subtle background and pencil icon to signal editability. Enter saves,
Escape cancels. Uses PATCH /projects/:slug under the hood.
@vercel
Copy link
Copy Markdown

vercel Bot commented May 30, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
dtoolkit Ready Ready Preview, Comment May 31, 2026 11:24am

ivncmp added 2 commits May 30, 2026 12:51
…EST API

- Fork @colbymchenry/codegraph as @dtoolkit/codegraph-sdk (library-only, no CLI/MCP/installer)
- Rewrite codegraph service to multi-graph via Map<name, CodeGraphInstance>
- Add graphs + graph_projects tables to dwork DB schema
- New REST API: /graphs/:name/* (CRUD, upload, project linking, queries)
- Remove codegraph from dwork config/CLI (indexing moves to dcontext)
- Exclude codegraph-sdk from monorepo lint/format (upstream fork style)
ivncmp added 11 commits May 30, 2026 13:01
Add CodeGraph.openDb() to the SDK fork — opens a DB directly without
requiring the .codegraph/ directory convention. dwork now stores
uploaded graphs at ~/.dwork/graphs/<name>/codegraph.db instead of
~/.dwork/graphs/<name>/.codegraph/codegraph.db.
Add postBinary() to HttpClient for binary uploads. New DWorkClient
methods: listGraphs, uploadGraph, searchGraphNodes, graphStats,
getGraphCallers, getGraphImpact, traceGraphPath, getGraphFiles, and
project linking. Types: DWorkGraph, DWorkGraphStats, DWorkGraphNode,
DWorkGraphSearchResult, DWorkGraphSubgraph, DWorkGraphUploadResult.
New `dcontext sync` command: indexes the cwd with codegraph SDK
(init on first run, incremental sync after), reads the codegraph.db,
uploads it to dwork via the SDK, and links to configured dwork projects.
Graph name derived from git remote or directory basename.
Complete rewrite of the graph explorer in the dwork dashboard:

- Layout per graph type: dagre LR for callgraphs, dagre TB for
  hierarchies, cose force-directed for overview and large graphs (>80
  nodes auto-fallback)
- Hub-based overview on load: getGraph endpoint now finds the most
  connected nodes via getCallees ranking and merges their shallow call
  trees, replacing the broken single-node traverse
- Hover neighbor highlight with fade on non-connected nodes
- Click-to-fit: clicking a node zooms to show it and its neighbors
- Double-click navigates into that node's call graph
- Navigation history with back button (←) in toolbar
- LOD labels: full qualified names (file.method) at normal zoom, short
  names at medium zoom, hidden at low zoom
- Contextual labels: ambiguous names like get/set/has now show their
  file context (e.g. config.get, db.set)
- Edge deduplication: multiple calls between same nodes collapsed to
  single edge
- Dark mode fixes: visible edges (0.45 opacity, 1.5px width), brighter
  text, thicker outlines
- Color-coded kind badges in stats header
- Interactive legend with click-to-filter by node kind
- Minimap with canvas rendering and toggle button
- Zoom +/- toolbar with correct viewport center calculation
- Context menu (right-click) for call graph, impact, hierarchy, center
- cytoscape-dagre and cytoscape-cxtmenu CDN extensions added
- Fixed React effect cascade: graphType via ref to prevent redundant
  cy rebuilds, cy.stop() before destroy to prevent isHeadless crashes
…lar deps

New methods on DWorkClient: graphGetSubgraph(), graphDeadCode(),
graphCircularDependencies(). Also reformats long type signatures
in existing methods for readability.
Inject graph composition, key hubs, circular dependencies, and
unreachable code warnings into the session briefing when a code
graph is available via dwork.
Add bidirectional navigation between projects and code graphs:
- GET /graphs now includes linked project slugs
- GraphsView cards show linked project chips
- ProjectsView and OverviewView cards show linked graph chips
- ProjectDetail header shows linked graphs with symbol/edge counts
- GraphDetail header shows linked projects
- New .graph-chip CSS class with gradient style and dark mode support
@ivncmp ivncmp merged commit b2d2185 into main May 31, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant