cubest 0.1.0

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.
Files changed (46) hide show
  1. package/LICENSE +201 -0
  2. package/NOTICE +27 -0
  3. package/README.ar.md +110 -0
  4. package/README.bn.md +111 -0
  5. package/README.es.md +110 -0
  6. package/README.hi.md +110 -0
  7. package/README.ja.md +113 -0
  8. package/README.md +469 -0
  9. package/README.pa.md +114 -0
  10. package/README.pt.md +113 -0
  11. package/README.ru.md +1174 -0
  12. package/README.zh-CN.md +233 -0
  13. package/bin/cubest.js +28 -0
  14. package/cubest.py +1862 -0
  15. package/package.json +28 -0
  16. package/profiles/agents_inventory.yaml +15 -0
  17. package/profiles/api_routes.yaml +20 -0
  18. package/profiles/call_graph.yaml +19 -0
  19. package/profiles/code_atlas.yaml +33 -0
  20. package/profiles/code_stats.yaml +15 -0
  21. package/profiles/csv_analytics.yaml +31 -0
  22. package/profiles/disk_usage.yaml +29 -0
  23. package/profiles/doc_structure.yaml +16 -0
  24. package/profiles/file_tree.yaml +27 -0
  25. package/profiles/frontend_geoip.yaml +49 -0
  26. package/profiles/git_log_activity.yaml +29 -0
  27. package/profiles/imports.yaml +16 -0
  28. package/profiles/jsonl_events.yaml +19 -0
  29. package/profiles/k8s_resources.yaml +25 -0
  30. package/profiles/loc_counter.yaml +51 -0
  31. package/profiles/mr_impact.yaml +19 -0
  32. package/profiles/nginx_access.yaml +33 -0
  33. package/profiles/nginx_cdn_covers.yaml +32 -0
  34. package/profiles/openapi_endpoints.yaml +19 -0
  35. package/profiles/react_components.yaml +15 -0
  36. package/profiles/sdd_checklist.yaml +17 -0
  37. package/profiles/sdd_specs.yaml +19 -0
  38. package/profiles/seo_audit.yaml +31 -0
  39. package/profiles/seo_semantic_tree.yaml +17 -0
  40. package/profiles/sitemap_map.yaml +20 -0
  41. package/profiles/skills_inventory.yaml +17 -0
  42. package/profiles/spec_status.yaml +18 -0
  43. package/profiles/sql_functions.yaml +31 -0
  44. package/profiles/tech_debt.yaml +16 -0
  45. package/profiles/xml_tags.yaml +21 -0
  46. package/profiles/yaml_keys.yaml +19 -0
package/README.hi.md ADDED
@@ -0,0 +1,110 @@
1
+ # cubest
2
+
3
+ [English](README.md) · [简体中文](README.zh-CN.md) · [Español](README.es.md) · **हिन्दी** · [العربية](README.ar.md) · [বাংলা](README.bn.md) · [Português](README.pt.md) · [Русский](README.ru.md) · [日本語](README.ja.md) · [ਪੰਜਾਬੀ](README.pa.md)
4
+
5
+ > **AI एजेंट के हर रिपॉज़िटरी स्कैन पर 7–22× कम टोकन।**
6
+ > सिंगल-पास OLAP एग्रीगेटर जो किसी भी टेक्स्ट स्ट्रीम — कोड, लॉग, CSV, JSONL,
7
+ > XML, HTML, SDD आर्टिफ़ैक्ट्स — को कॉम्पैक्ट क्यूब में समेट देता है।
8
+ > **Claude Code, Cursor, Codex, Aider, Windsurf, Cline, Continue.dev** और
9
+ > हर AI कोडिंग एजेंट के लिए बनाया गया है जो इनपुट टोकन के हिसाब से बिल करता है।
10
+
11
+ <p align="left">
12
+ <a href="LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-blue.svg" alt="License"></a>
13
+ <img src="https://img.shields.io/badge/python-3.8%2B-blue.svg">
14
+ <img src="https://img.shields.io/badge/deps-stdlib%20only-green.svg">
15
+ <img src="https://img.shields.io/badge/tests-57%20passing-brightgreen.svg">
16
+ </p>
17
+
18
+ ## 🧠 AI एजेंट को क्यों परवाह करनी चाहिए
19
+
20
+ 7 वास्तविक परिदृश्यों पर मापा गया (देखें [`examples/`](examples/)):
21
+
22
+ | # | परिदृश्य | Naive tokens | Cubest tokens | अनुपात |
23
+ |---|---------------------------------------------|:------------:|:-------------:|:---------:|
24
+ | 1 | nginx लॉग में 5xx जाँच (5000 पंक्तियाँ) | 3,590 | 158 | **22.7×** |
25
+ | 2 | रिपॉज़िटरी ऑनबोर्डिंग (40 फ़ाइलें) | 1,256 | 175 | 7.2× |
26
+ | 3 | `git diff` से MR इम्पैक्ट मैप | 280 | 16 | **17.5×** |
27
+ | 4 | छोटा CSV रोलअप (300 पंक्तियाँ) | 280 | 368 | 0.8× ❌ |
28
+ | 5 | 10 HTML पेजों का SEO ऑडिट | 382 | 49 | 7.8× |
29
+ | 6 | डिस्क उपयोग ऑडिट (300 फ़ाइलें) | 338 | 68 | 5.0× |
30
+ | 7 | RSS श्रेणी रोलअप (3×30 आइटम) | 1,692 | 265 | 6.4× |
31
+ | | **मध्यक (median)** | | | **7.2×** |
32
+
33
+ Cubest **बड़े प्रवाह और श्रेणीबद्ध डेटा** पर जीतता है। बहुत छोटे टेबल डेटा
34
+ (300-पंक्ति CSV) पर एक साधारण `awk` पाइपलाइन पहले से ही कॉम्पैक्ट है और
35
+ यहाँ cubest हार भी सकता है। मुख्य परिदृश्यों — लॉग, कोड ट्री, sitemap
36
+ क्रॉल — पर एजेंट के कॉन्टेक्स्ट में गिरने वाले टोकन 5–25× कम होते हैं।
37
+
38
+ ## 🚀 इंस्टॉलेशन
39
+
40
+ ```bash
41
+ # सादा डाउनलोड (JSON प्रोफ़ाइल के लिए कोई dependency नहीं)
42
+ curl -O https://raw.githubusercontent.com/BaryshevS/cubest/main/cubest.py
43
+ python3 cubest.py --profile file_tree .
44
+
45
+ # pip के ज़रिये (PyPI पर जल्द उपलब्ध)
46
+ pip install cubest
47
+ cubest --profile file_tree .
48
+
49
+ # npm रैपर के ज़रिये
50
+ npx cubest --profile file_tree .
51
+ ```
52
+
53
+ ## ⚡ त्वरित शुरुआत
54
+
55
+ ```bash
56
+ # अनजान रिपॉज़िटरी का नक्शा (3000 के बजाय 30 लाइनें)
57
+ cubest --profile file_tree .
58
+
59
+ # nginx.gz लॉग — top URL × status × p95 latency
60
+ cubest --profile nginx_access /var/log/nginx/access.log.gz
61
+
62
+ # प्रति भाषा LOC गिनना
63
+ cubest --profile loc_counter .
64
+
65
+ # CSV → OLAP → इंटरैक्टिव ECharts डैशबोर्ड (एक HTML फ़ाइल)
66
+ cubest -p '{
67
+ "dimensions": ["campaign", "device"],
68
+ "measures": [{"name":"impressions","type":"sum","field":"impressions"}],
69
+ "extract": [{"type":"preset","preset":"csv"}],
70
+ "output": {"format":"echarts","chart_type":"sankey"}
71
+ }' report.csv > dashboard.html
72
+ ```
73
+
74
+ ## 📊 आउटपुट प्रारूप
75
+
76
+ 13 प्रारूप: `tree`, `flat`, `compact`, `csv`, `md_table`, `yaml`, `json`,
77
+ `xml`, `dot`, `mermaid`, `plantuml`, `drawio`, `echarts`.
78
+
79
+ 31 बिल्ट-इन प्रोफ़ाइल — कोड, लॉग, CSV, SEO, K8s, OpenAPI, SDD के लिए।
80
+ पूरी सूची [अंग्रेज़ी README](README.md#-what-you-get) में।
81
+
82
+ ## 📜 लाइसेंस
83
+
84
+ Apache License 2.0 — [LICENSE](LICENSE) और [NOTICE](NOTICE) देखें।
85
+
86
+ **एट्रिब्यूशन आवश्यकता (Apache 2.0 §4d):** यदि आप cubest को पुनर्वितरित करते हैं,
87
+ तो NOTICE फ़ाइल को अपस्ट्रीम URL सुरक्षित रखते हुए शामिल करना अनिवार्य है:
88
+
89
+ > https://github.com/BaryshevS/cubest
90
+
91
+ ## 💖 सहयोग
92
+
93
+ अगर cubest आपके दैनिक एजेंट वर्कफ़्लो में टोकन बचाता है या किसी घटना को कम
94
+ करता है, तो प्रायोजक बनने पर विचार करें — यह सीधे roadmap (t-digest,
95
+ streaming CSV, एजेंट स्निपेट्स) और इन्फ़्रास्ट्रक्चर को फंड करता है:
96
+
97
+ - **GitHub Sponsors** → https://github.com/sponsors/BaryshevS
98
+ - **Open Collective** → https://opencollective.com/baryshevsv
99
+
100
+ महीने के $3 भी प्रोजेक्ट चलाते रहते हैं। प्रायोजक issue triage में
101
+ प्राथमिकता पाते हैं और रिलीज़ नोट्स में उल्लेखित होते हैं।
102
+
103
+ ## ⭐ रिपॉज़िटरी को स्टार दें
104
+
105
+ यदि cubest आपके AI बजट का हिस्सा बचाता है या किसी SRE घटना को एक घंटे कम
106
+ करता है — एक स्टार दूसरों को इसे खोजने में मदद करता है। बस यही अनुरोध है।
107
+
108
+ <a href="https://github.com/BaryshevS/cubest/stargazers">
109
+ <img src="https://img.shields.io/github/stars/BaryshevS/cubest?style=social" alt="Star">
110
+ </a>
package/README.ja.md ADDED
@@ -0,0 +1,113 @@
1
+ # cubest
2
+
3
+ [English](README.md) · [简体中文](README.zh-CN.md) · [Español](README.es.md) · [हिन्दी](README.hi.md) · [العربية](README.ar.md) · [বাংলা](README.bn.md) · [Português](README.pt.md) · [Русский](README.ru.md) · **日本語** · [ਪੰਜਾਬੀ](README.pa.md)
4
+
5
+ > **AI エージェントのリポジトリスキャンあたり 7–22 倍のトークン節約。**
6
+ > あらゆるテキストストリーム(コード、ログ、CSV、JSONL、XML、HTML、
7
+ > SDD 成果物)をコンパクトな OLAP キューブに畳み込むシングルパス
8
+ > アグリゲーター。**Claude Code、Cursor、Codex、Aider、Windsurf、Cline、
9
+ > Continue.dev**、そして入力トークンごとに課金されるあらゆる AI
10
+ > コーディングエージェント向けに設計されています。
11
+
12
+ <p align="left">
13
+ <a href="LICENSE"><img src="https://img.shields.io/badge/license-Apache%202.0-blue.svg" alt="License"></a>
14
+ <img src="https://img.shields.io/badge/python-3.8%2B-blue.svg">
15
+ <img src="https://img.shields.io/badge/deps-stdlib%20のみ-green.svg">
16
+ <img src="https://img.shields.io/badge/tests-57%20通過-brightgreen.svg">
17
+ </p>
18
+
19
+ ## 🧠 なぜ AI エージェントが気にすべきか
20
+
21
+ 7 つの実際的なシナリオで計測(詳細は [`examples/`](examples/) を参照):
22
+
23
+ | # | シナリオ | ナイーブ tokens | Cubest tokens | 比率 |
24
+ |---|---------------------------------------|:---------------:|:-------------:|:---------:|
25
+ | 1 | 5000 行の nginx ログの 5xx 調査 | 3,590 | 158 | **22.7×** |
26
+ | 2 | リポジトリのオンボーディング(40 files)| 1,256 | 175 | 7.2× |
27
+ | 3 | `git diff` からの MR 影響マップ | 280 | 16 | **17.5×** |
28
+ | 4 | 小さな CSV ロールアップ(300 行) | 280 | 368 | 0.8× ❌ |
29
+ | 5 | 10 ページの SEO 監査 | 382 | 49 | 7.8× |
30
+ | 6 | 300 ファイルのディスク使用監査 | 338 | 68 | 5.0× |
31
+ | 7 | RSS カテゴリロールアップ(3×30) | 1,692 | 265 | 6.4× |
32
+ | | **中央値** | | | **7.2×** |
33
+
34
+ Cubest は**大きなストリームと階層データ**で勝ちます。非常に小さな表形式データ
35
+ (300 行の CSV)では素朴な `awk` パイプラインで既に十分コンパクトで、cubest は
36
+ むしろ負けます。
37
+
38
+ ## 🚀 インストール
39
+
40
+ ```bash
41
+ # シンプルなダウンロード(JSON プロファイルは deps 不要)
42
+ curl -O https://raw.githubusercontent.com/BaryshevS/cubest/main/cubest.py
43
+ python3 cubest.py --profile file_tree .
44
+
45
+ # pip 経由(PyPI 公開予定)
46
+ pip install cubest
47
+ cubest --profile file_tree .
48
+
49
+ # npm ラッパー経由
50
+ npx cubest --profile file_tree .
51
+ ```
52
+
53
+ ## ⚡ クイックスタート
54
+
55
+ ```bash
56
+ # 見知らぬリポジトリのマップ(3000 行の代わりに 30 行)
57
+ cubest --profile file_tree .
58
+
59
+ # Nginx access.log.gz — トップ URL × ステータス × 平均レイテンシ + p95/p99
60
+ cubest --profile nginx_access /var/log/nginx/access.log.gz
61
+
62
+ # 言語別コード行数(scc/tokei/cloc の代替)
63
+ cubest --profile loc_counter .
64
+
65
+ # CSV → OLAP → インタラクティブ ECharts ダッシュボード
66
+ cubest -p '{
67
+ "dimensions": ["campaign", "device"],
68
+ "measures": [{"name":"impressions","type":"sum","field":"impressions"}],
69
+ "extract": [{"type":"preset","preset":"csv"}],
70
+ "output": {"format":"echarts","chart_type":"sankey"}
71
+ }' report.csv > report.html
72
+ ```
73
+
74
+ ## 📊 出力形式
75
+
76
+ 13 の出力形式:`tree`、`flat`、`compact`、`csv`、`md_table`、`yaml`、`json`、
77
+ `xml`、`dot`、`mermaid`、`plantuml`、`drawio`、`echarts`。
78
+
79
+ 31 の組み込みプロファイル — コード、ログ、CSV、SEO、K8s、OpenAPI、SDD。
80
+ 完全なリストは [英語 README](README.md#-what-you-get) をご覧ください。
81
+
82
+ ## 📜 ライセンス
83
+
84
+ Apache License 2.0 — [LICENSE](LICENSE) と [NOTICE](NOTICE) を参照。
85
+
86
+ **帰属要件(Apache 2.0 §4d):** cubest を再配布する場合(派生物、製品への
87
+ 組み込み、ホスト型サービス、コンテナイメージ、CLI ラッパー、IDE プラグイン、
88
+ エージェントテンプレートの一部として)、NOTICE ファイル(またはその可読な
89
+ 内容)を含め、以下のアップストリーム URL を保持する必要があります:
90
+
91
+ > https://github.com/BaryshevS/cubest
92
+
93
+ ## 💖 サポート
94
+
95
+ cubest がエージェントの日常ワークフローでトークンを節約したり、
96
+ インシデントを短縮したりする場合は、スポンサーになることをご検討ください。
97
+ 資金はロードマップの項目(t-digest、ストリーミング CSV、エージェント用
98
+ スニペット)とインフラに直接使われます:
99
+
100
+ - **GitHub Sponsors** → https://github.com/sponsors/BaryshevS
101
+ - **Open Collective** → https://opencollective.com/baryshevsv
102
+
103
+ 月額 3 ドルでもプロジェクトの継続を支えます。スポンサーは issue の
104
+ トリアージで優先され、リリースノートにクレジットされます。
105
+
106
+ ## ⭐ このリポジトリにスターを
107
+
108
+ cubest が AI 予算の一部を節約したり、SRE インシデントを 1 時間短縮したりした
109
+ 場合、スターは他の人がこれを見つけるのを助けます。
110
+
111
+ <a href="https://github.com/BaryshevS/cubest/stargazers">
112
+ <img src="https://img.shields.io/github/stars/BaryshevS/cubest?style=social" alt="Star">
113
+ </a>