Python-first project mapper that emits .simplicio/project-map.json and precedent-index.json for the Simplicio ecosystem.
Project description
simplicio-mapper
Python-first project mapper for the Simplicio ecosystem. It scans a repository and emits two machine-readable artifacts that agents and tooling can consume without parsing the human-readable markdown docs:
.simplicio/project-map.json(simplicio.project-map/v1) — file inventory, architecture signals, entry points, tests, modules, entities, dependencies and recent changes..simplicio/precedent-index.json(simplicio.precedent-index/v1) — high-signal code examples tagged by change type, file, language, roles and snippet.
The full contract is documented in SIMPLICIO_INTEGRATION.md.
Install
Requires Python 3.10+. The package installs lightweight performance dependencies
(orjson for JSON serialization and diskcache for persistent file-processing cache).
pip install simplicio-mapper
Usage
# Map the current directory into .simplicio/
simplicio-mapper map
# Refresh artifacts and record changed files since the last run
simplicio-mapper update
# Map another project root, with hints when .starter-meta.json is absent
simplicio-mapper map --root path/to/project --stack python --product-name "My App"
# Re-run automatically while files change locally
simplicio-mapper map --watch
The llm-project-mapper console script is provided as an alias.
Options
| Option | Description |
|---|---|
--root <dir> |
Project root to map. Defaults to the current directory. |
--out <dir> |
Artifact directory. Defaults to .simplicio. |
--stack <name> |
Stack hint when .starter-meta.json is absent. |
--product-name <name> |
Product name hint when .starter-meta.json is absent. |
--incremental |
Record changed files and update existing artifacts. |
--watch |
Re-run mapping when local files change. |
--silent |
Minimal output. |
-V, --version |
Show version and exit. |
-h, --help |
Show help. |
Consuming the artifacts
from pathlib import Path
import json
base = Path(".simplicio")
project_map = json.loads((base / "project-map.json").read_text())
precedents = json.loads((base / "precedent-index.json").read_text())
top_files = sorted(
project_map["files"], key=lambda f: f.get("importance", 0), reverse=True
)[:8]
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file simplicio_mapper-0.6.0.tar.gz.
File metadata
- Download URL: simplicio_mapper-0.6.0.tar.gz
- Upload date:
- Size: 37.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
77a5e040b3a0dc47a838a2a7fc6d24899bddd72200fcc59c7f826b0345760650
|
|
| MD5 |
678d20f8947b7206491c04f52800694c
|
|
| BLAKE2b-256 |
af83fc08fbbbb126e4813d0004fb4fc5630a67a714f3764baf61b2e1942c3bcc
|
File details
Details for the file simplicio_mapper-0.6.0-py3-none-any.whl.
File metadata
- Download URL: simplicio_mapper-0.6.0-py3-none-any.whl
- Upload date:
- Size: 15.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.15
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
77a3dc97614c62d74d9c874aaa9a3b93edfa36633fa767f34ce28224d8341c9b
|
|
| MD5 |
c06451941e9e3efe74123a15d338343c
|
|
| BLAKE2b-256 |
2a7e37d7f7e90ab13c85f6f711f9a8bb45677c95bbcc639c3d6133d060c9c710
|