1bcoder 0.1.6__tar.gz → 0.1.7__tar.gz

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 (93) hide show
  1. {1bcoder-0.1.6 → 1bcoder-0.1.7/1bcoder.egg-info}/PKG-INFO +93 -3
  2. {1bcoder-0.1.6 → 1bcoder-0.1.7}/1bcoder.egg-info/SOURCES.txt +2 -0
  3. 1bcoder-0.1.6/README.md → 1bcoder-0.1.7/PKG-INFO +1758 -1653
  4. 1bcoder-0.1.6/1bcoder.egg-info/PKG-INFO → 1bcoder-0.1.7/README.md +1743 -1668
  5. 1bcoder-0.1.7/_bcoder_data/doc/TRANSLATE.md +174 -0
  6. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/md.py +2 -1
  7. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/profiles.txt +2 -0
  8. 1bcoder-0.1.7/_bcoder_data/scripts/Translate.txt +6 -0
  9. {1bcoder-0.1.6 → 1bcoder-0.1.7}/chat.py +506 -14
  10. {1bcoder-0.1.6 → 1bcoder-0.1.7}/pyproject.toml +32 -32
  11. {1bcoder-0.1.6 → 1bcoder-0.1.7}/1bcoder.egg-info/dependency_links.txt +0 -0
  12. {1bcoder-0.1.6 → 1bcoder-0.1.7}/1bcoder.egg-info/entry_points.txt +0 -0
  13. {1bcoder-0.1.6 → 1bcoder-0.1.7}/1bcoder.egg-info/requires.txt +0 -0
  14. {1bcoder-0.1.6 → 1bcoder-0.1.7}/1bcoder.egg-info/top_level.txt +0 -0
  15. {1bcoder-0.1.6 → 1bcoder-0.1.7}/LICENSE +0 -0
  16. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/__init__.py +0 -0
  17. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/agents/advance.txt +0 -0
  18. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/agents/ask.txt +0 -0
  19. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/agents/compact.txt +0 -0
  20. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/agents/concepts.txt +0 -0
  21. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/agents/fill.txt +0 -0
  22. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/agents/planning.txt +0 -0
  23. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/agents/scan.txt +0 -0
  24. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/agents/sqlite.txt +0 -0
  25. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/aliases.txt +0 -0
  26. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/doc/MCP.md +0 -0
  27. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/doc/OLLAMA_SERVER_PARAM.md +0 -0
  28. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/doc/PARAM.md +0 -0
  29. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/doc/PROC.md +0 -0
  30. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/map.txt +0 -0
  31. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/action-required.py +0 -0
  32. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/add-save.py +0 -0
  33. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/assist.py +0 -0
  34. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/collect-files.py +0 -0
  35. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/ctx_cut.py +0 -0
  36. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/extract-code.py +0 -0
  37. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/extract-files.py +0 -0
  38. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/extract-list.py +0 -0
  39. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/grounding-check.py +0 -0
  40. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/mdx.py +0 -0
  41. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/pattern-gate.py +0 -0
  42. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/regexp-extract.py +0 -0
  43. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/rude_words.py +0 -0
  44. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/scan-save.py +0 -0
  45. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/secret_check.py +0 -0
  46. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/sql_readonly_guard.py +0 -0
  47. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/proc/tempctx-cut.py +0 -0
  48. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/prompts/analysis.txt +0 -0
  49. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/prompts/sumarise.txt +0 -0
  50. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/prompts.txt +0 -0
  51. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/AddFunction.txt +0 -0
  52. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/AskProject.txt +0 -0
  53. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/CheckRequirements.txt +0 -0
  54. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/DockerMySQL.txt +0 -0
  55. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/DockerNginx.txt +0 -0
  56. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/DockerPython.txt +0 -0
  57. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/DockerStack.txt +0 -0
  58. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/DuckDuckGoInstant.txt +0 -0
  59. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/EnvTemplate.txt +0 -0
  60. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/Explain.txt +0 -0
  61. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/ExploreProjectStructure.txt +0 -0
  62. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/GitIgnorePython.txt +0 -0
  63. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/MySQLDump.txt +0 -0
  64. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/NewScript.txt +0 -0
  65. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/PipFreeze.txt +0 -0
  66. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/PyPI.txt +0 -0
  67. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/Refactor.txt +0 -0
  68. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/RunAndFix.txt +0 -0
  69. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/SQLiteSchema.txt +0 -0
  70. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/WikiPage.txt +0 -0
  71. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/WikiSearch.txt +0 -0
  72. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/auto-bkup.txt +0 -0
  73. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/edit-control.txt +0 -0
  74. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/parallel_call.txt +0 -0
  75. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/personal/content/create-regular-content.txt +0 -0
  76. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/personal/content/plan.txt +0 -0
  77. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/personal/test/collect-data-from-test-environment.txt +0 -0
  78. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/plan.txt +0 -0
  79. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/remote/create-content-on-remote-server.txt +0 -0
  80. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/set_ctx.txt +0 -0
  81. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/simargl-cli_index_files.txt +0 -0
  82. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/simargl-cli_index_units.txt +0 -0
  83. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/simargl-cli_search.txt +0 -0
  84. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/team-map-worker.txt +0 -0
  85. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/team-search-worker.txt +0 -0
  86. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/team-summarize.txt +0 -0
  87. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/team-tree-worker.txt +0 -0
  88. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/scripts/test.txt +0 -0
  89. {1bcoder-0.1.6 → 1bcoder-0.1.7}/_bcoder_data/teams/code-analysis.yaml +0 -0
  90. {1bcoder-0.1.6 → 1bcoder-0.1.7}/map_index.py +0 -0
  91. {1bcoder-0.1.6 → 1bcoder-0.1.7}/map_query.py +0 -0
  92. {1bcoder-0.1.6 → 1bcoder-0.1.7}/setup.cfg +0 -0
  93. {1bcoder-0.1.6 → 1bcoder-0.1.7}/tests/test_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: 1bcoder
3
- Version: 0.1.6
3
+ Version: 0.1.7
4
4
  Summary: AI coding assistant agent for 1B–7B local models (Ollama, LMStudio, llama.cpp). Terminal REPL with file editing, project map, agents, scripts, and parallel multi-model queries.
5
5
  Project-URL: Homepage, https://github.com/szholobetsky/1bcoder
6
6
  Project-URL: Repository, https://github.com/szholobetsky/1bcoder
@@ -328,6 +328,95 @@ Requires `prompt_toolkit` for full editing (arrow keys, Home/End, scroll). Falls
328
328
 
329
329
  ---
330
330
 
331
+ ### Translation (`/translate`)
332
+
333
+ Enables on-the-fly translation between your native language and English. Supports four modes:
334
+
335
+ | Mode | Backend | Model size | Quality | Private | Internet |
336
+ |---|---|---|---|---|---|
337
+ | `online` | Google Translate (deep-translator) | none | High | **No** | Required |
338
+ | `mini` | argostranslate | ~100 MB per language pair | Moderate | Yes | Not required |
339
+ | `offline` | NLLB-200 (ctranslate2) | ~2.4 GB download, ~600 MB after conversion | Good | Yes | Not required |
340
+ | `lm` | Local/remote Ollama model | depends on model | High | Yes | Not required |
341
+
342
+ > **Privacy warning:** `online` mode sends your text to Google servers. Do not use with confidential projects, proprietary code, or sensitive data. Use `mini`, `offline`, or `lm` mode instead.
343
+
344
+ **One-time setup:**
345
+
346
+ ```
347
+ # Fully offline, best local quality (downloads ~2.4 GB (converts to ~600 MB)):
348
+ > /translate setup lang:uk mode:offline
349
+
350
+ # Dedicated translation model via Ollama (no model switching overhead):
351
+ > /translate setup lang:uk mode:lm host:192.168.0.5:11434 model:translategemma:4b
352
+
353
+ # Or using a profile from profiles.txt:
354
+ > /translate setup lang:uk profile:lmtrans
355
+
356
+ # Minimal offline footprint (~100 MB per language pair):
357
+ > /translate setup lang:uk mode:mini
358
+
359
+ # Online (best quality, not for confidential work):
360
+ > /translate setup lang:uk mode:online
361
+
362
+ # Change only the host (all other settings stay):
363
+ > /translate setup host:openai://192.168.0.229:1234
364
+ ```
365
+
366
+ Config is saved globally to `~/.1bcoder/translate.json` and applied automatically on every future startup.
367
+
368
+ | Command | Description |
369
+ |---|---|
370
+ | `/translate setup [lang:uk] [mode:offline] [host:<url>] [model:<name>] [profile:<name>]` | Configure translation; all params optional, unset ones keep existing values |
371
+ | `/translate on` | Enable translation (uses saved language and mode) |
372
+ | `/translate off` | Disable translation |
373
+ | `/translate status` | Show lang, mode, lm_host, lm_model, enabled |
374
+ | `/translate lang <code>` | Change language |
375
+ | `/translate mode online\|mini\|offline\|lm [profile <name>]` | Switch mode; `profile` loads host+model from profiles.txt |
376
+ | `/translate last` | Retranslate last reply |
377
+ | `/translate last mode offline lang de` | Retranslate with overrides (mode / lang) |
378
+
379
+ Common language codes: `uk` Ukrainian, `de` German, `fr` French, `pl` Polish, `es` Spanish, `zh` Chinese. Full list: `/doc translate`
380
+
381
+ How it works: user input is translated to English before the LLM call, and the reply is translated back to the native language after. The model always reasons in English; the user always reads and writes in their language.
382
+
383
+ To open the translated reply in the browser:
384
+
385
+ ```
386
+ /translate last
387
+ /proc run mdx translated
388
+ ```
389
+
390
+ Or use the built-in script:
391
+
392
+ ```
393
+ /script run Translate
394
+ ```
395
+
396
+ **`offline` mode — NLLB-200 (recommended for private use):**
397
+
398
+ Downloads the NLLB-200-distilled-600M model (~2.4 GB download, ~600 MB after int8 conversion) and runs fully in-process via ctranslate2. No Ollama model switching — the translation model lives in RAM alongside the main model, keeping full VRAM free for the LLM.
399
+
400
+ ```
401
+ /translate setup lang:uk mode:offline
402
+ ```
403
+
404
+ **`lm` mode — dedicated translation model on phone or remote device:**
405
+
406
+ Add a `lmtrans` profile in `~/.1bcoder/profiles.txt` pointing to the device running the translation model:
407
+
408
+ ```
409
+ lmtrans: 192.168.0.5:11434|translategemma:4b|ctx
410
+ ```
411
+
412
+ Then configure `/translate` to use it:
413
+
414
+ ```
415
+ /translate setup uk lm host 192.168.0.5:11434 model translategemma:4b
416
+ ```
417
+
418
+ ---
419
+
331
420
  ### File operations
332
421
 
333
422
  | Command | Description |
@@ -1358,6 +1447,7 @@ Run a Python script against the last LLM reply. Useful for extracting filenames,
1358
1447
  ```
1359
1448
  /proc list # list available processors
1360
1449
  /proc run <name> # one-shot: run against last reply
1450
+ /proc run <name> translated # run against last translated reply (from /translate)
1361
1451
  /proc run <name> -f <file> # run against an external file instead of last reply
1362
1452
  /proc on grounding-check # persistent: run after every reply automatically
1363
1453
  /proc off # stop persistent processor
@@ -1389,8 +1479,8 @@ Built-in processors in `~/.1bcoder/proc/`:
1389
1479
  | `extract-list` | Convert first bullet/numbered list in reply to comma-separated line | one-shot |
1390
1480
  | `grounding-check` | Score identifiers against `map.txt`, warn if <50% | persistent / gate |
1391
1481
  | `collect-files` | Accumulate filenames to `.1bcoder/collected-files.txt` | persistent |
1392
- | `md` | Render last reply as formatted Markdown in terminal | one-shot |
1393
- | `mdx` | Render last reply as Markdown + LaTeX (KaTeX) + Mermaid diagrams in browser | one-shot |
1482
+ | `md` | Render last reply as formatted Markdown in terminal; add `translated` to use translated reply | one-shot |
1483
+ | `mdx` | Render last reply as Markdown + LaTeX (KaTeX) + Mermaid diagrams in browser; add `translated` to use translated reply | one-shot |
1394
1484
  | `ctx_cut` | Auto `/ctx cut` when context exceeds threshold (default 90%) | persistent |
1395
1485
  | `rude_words` | Alert if reply contains profanity (`ua` arg adds Ukrainian list) | persistent |
1396
1486
  | `secret_check` | Alert if reply contains sensitive names (google, anthropic…) | persistent |
@@ -27,6 +27,7 @@ _bcoder_data/doc/MCP.md
27
27
  _bcoder_data/doc/OLLAMA_SERVER_PARAM.md
28
28
  _bcoder_data/doc/PARAM.md
29
29
  _bcoder_data/doc/PROC.md
30
+ _bcoder_data/doc/TRANSLATE.md
30
31
  _bcoder_data/proc/action-required.py
31
32
  _bcoder_data/proc/add-save.py
32
33
  _bcoder_data/proc/assist.py
@@ -66,6 +67,7 @@ _bcoder_data/scripts/PyPI.txt
66
67
  _bcoder_data/scripts/Refactor.txt
67
68
  _bcoder_data/scripts/RunAndFix.txt
68
69
  _bcoder_data/scripts/SQLiteSchema.txt
70
+ _bcoder_data/scripts/Translate.txt
69
71
  _bcoder_data/scripts/WikiPage.txt
70
72
  _bcoder_data/scripts/WikiSearch.txt
71
73
  _bcoder_data/scripts/auto-bkup.txt