Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 0 additions & 7 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,3 @@
/node_modules
/dist
.env

# Local Graphify outputs
/graphify-out/

# Local LSP-MCP data
/.lsmcp/*
!/.lsmcp/config.json
24 changes: 0 additions & 24 deletions .lsmcp/config.json

This file was deleted.

23 changes: 2 additions & 21 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,27 +13,8 @@
report the missing runner rather than inventing commands.
- Other checks are manual tools for the user unless explicitly requested.

## TypeScript navigation
## Dependency navigation

- When connected, use `shared-lsp` for types, namespace contracts, `Pick`
and inherited generic methods: prefer focused hover, definition, signature-help
and completion requests anchored to a specific usage.
- Pass this repository as `root` and relative file paths. Lines are one-based;
columns are zero-based. If LSP is unavailable or incomplete, search source.
An empty response does not prove a symbol is absent. Setup is in README.md.
- This repository is the source of `@monadiam/shared`; navigate local declarations.
Consumers may use a different installed version. Inspect protobuf and Kafka JSON
schemas directly; TypeScript navigation covers `src/**/*.ts`.

## Local code graph

- Graphify is optional for architecture and cross-file relationships. Query a
current graph with `graphify query "<question>"`; use source search as fallback.
- Refresh stale data with `make graphify` before relying on it. Small edits in
known files do not require a graph rebuild. Other graph commands are in Makefile.
- Keep `graphify-out/` untracked and never load the full graph JSON into context.
Read `graphify-out/GRAPH_REPORT.md` only when a broad overview is needed.
- Verify graph conclusions against current source and contracts.
An absent edge does not prove a dependency is absent.
- Keep extraction local and code-only; do not enable semantic extraction, remote
backends or automatic hooks just to navigate code.
schemas directly; TypeScript declarations are in `src/**/*.ts`.
17 changes: 1 addition & 16 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
.PHONY: build lint lint-fix tsc knip secrets-check lsp env check apply verify image image-publish image-release image-cleanup graphify graphify-rebuild graphify-html
.PHONY: build lint lint-fix tsc knip secrets-check env check apply verify image image-publish image-release image-cleanup

GRAPHIFY ?= graphify
IMAGE ?= monadiam/shared-schemas:local
VCS_REF ?= $(shell git rev-parse HEAD)

Expand All @@ -17,8 +16,6 @@ knip:
pnpm run knip
secrets-check:
pnpm run secrets:check
lsp:
@pnpm --silent run lsp

# Contracts
env:
Expand All @@ -39,15 +36,3 @@ image-release:
bash .github/scripts/packages.sh release
image-cleanup:
bash .github/scripts/packages.sh cleanup

# Local code graph
graphify:
$(GRAPHIFY) extract . --code-only
$(GRAPHIFY) cluster-only . --no-viz --no-label

graphify-rebuild:
$(GRAPHIFY) extract . --code-only --force
$(GRAPHIFY) cluster-only . --no-viz --no-label

graphify-html: graphify
$(GRAPHIFY) export html
43 changes: 0 additions & 43 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,45 +4,6 @@ Cross-service shared definitions that eliminate manual synchronization between M

----

<details>
<summary><strong>Local Code Graph (Graphify)</strong></summary>

Install once with [uv](https://docs.astral.sh/uv/), then open a new terminal:

```sh
uv tool install graphifyy==0.9.65
uv tool update-shell
```

Run `make graphify` from the repository root to create or update the local code
graph and report. No API key is required. Outputs in `graphify-out/` are ignored
by Git. Agent guidance: [AGENTS.md](AGENTS.md).

</details>

----

<details>
<summary><strong>Local TypeScript Navigation (LSP-MCP)</strong></summary>

[lsmcp](https://github.com/mizchi/lsmcp) and TypeScript Language Server are pinned
dev dependencies. Install with `pnpm install` using the Node version from
`package.json`. Run `make lsp` from the repository root to start the stdio MCP
server; an MCP client must connect to it to issue queries.

For an MCP client, use command `node`, arguments
`["node_modules/@mizchi/lsmcp/dist/lsmcp.js", "--config", ".lsmcp/config.json"]`,
and set its working directory to this repository. Desktop clients may need an
absolute Node executable path. Configuration: [.lsmcp/config.json](.lsmcp/config.json).
Local indexes and caches are ignored by Git. Agent guidance: [AGENTS.md](AGENTS.md).

TypeScript navigation covers local declarations in `src`. Protobuf and Kafka
JSON schemas are checked separately with `make check`.

</details>

----

<details>
<summary><strong>Contracts</strong></summary>

Expand Down Expand Up @@ -186,10 +147,6 @@ Missing or empty values fail immediately; scripts do not supply fallback values.
| `make tsc` | Check TypeScript with tsc --noEmit. |
| `make knip` | Run Knip. |
| `make secrets-check` | Run the hook secret scan (staged changes). |
| `make lsp` | Start the local TypeScript MCP server over stdio. |
| `make graphify` | Create or update the local code graph and Markdown report. |
| `make graphify-rebuild` | Rescan all code files and regenerate the report. |
| `make graphify-html` | Update the graph and report, then export HTML visualization. |
| **Schema Registry** | |
| `make env` | Create `.env` from `.env.example`. |
| `make check` | Check catalog, artifact files, JSON syntax and proto3 headers; no network. |
Expand Down
1 change: 0 additions & 1 deletion configs/knip.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ import type { KnipConfig } from "knip";
const config: KnipConfig = {
ignoreExportsUsedInFile: true, // reduces noise from re-exports inside index.ts
ignoreBinaries: ["gitleaks"], // Installed on the host, not through pnpm.
ignoreDependencies: ["typescript-language-server"],
project: ["src/**/*.ts"],
ignore: [],
};
Expand Down
5 changes: 1 addition & 4 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@
"tsc": "tsc --noEmit",
"knip": "knip --config configs/knip.config.ts",
"secrets:check": "gitleaks protect --staged --config .gitleaks.toml",
"lsp": "lsmcp --config .lsmcp/config.json",
"build": "rm -rf dist tsconfig.tsbuildinfo && tsc",
"verify": "./scripts/verify.sh",
"apply": "./scripts/apply.sh",
Expand All @@ -54,7 +53,6 @@
},
"homepage": "https://github.com/MonadIAM/shared#readme",
"devDependencies": {
"@mizchi/lsmcp": "0.10.0",
"@types/node": "26.2.0",
"@typescript-eslint/parser": "8.67.0",
"eslint": "10.9.0",
Expand All @@ -64,7 +62,6 @@
"knip": "6.32.2",
"prettier": "3.9.6",
"typescript": "6.0.3",
"typescript-eslint": "8.67.0",
"typescript-language-server": "5.1.3"
"typescript-eslint": "8.67.0"
}
}
Loading
Loading