MeowCat 1.2.35__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.
- meowcat-1.2.35/.github/workflows/ci.yml +54 -0
- meowcat-1.2.35/.github/workflows/release.yml +22 -0
- meowcat-1.2.35/.gitignore +31 -0
- meowcat-1.2.35/CATALOG.md +808 -0
- meowcat-1.2.35/LICENSE +21 -0
- meowcat-1.2.35/PKG-INFO +17 -0
- meowcat-1.2.35/README.md +401 -0
- meowcat-1.2.35/README_CN.md +397 -0
- meowcat-1.2.35/meowcat/__init__.py +40 -0
- meowcat-1.2.35/meowcat/__main__.py +82 -0
- meowcat-1.2.35/meowcat/_exports.py +584 -0
- meowcat-1.2.35/meowcat/adapters/__init__.py +62 -0
- meowcat-1.2.35/meowcat/adapters/base.py +106 -0
- meowcat-1.2.35/meowcat/adapters/brain.py +467 -0
- meowcat-1.2.35/meowcat/adapters/sense.py +142 -0
- meowcat-1.2.35/meowcat/adapters/voice.py +44 -0
- meowcat-1.2.35/meowcat/anatomy.py +139 -0
- meowcat-1.2.35/meowcat/assembly.py +949 -0
- meowcat-1.2.35/meowcat/biology/__init__.py +491 -0
- meowcat-1.2.35/meowcat/biology/active_growth.py +368 -0
- meowcat-1.2.35/meowcat/biology/active_growth_pack.py +83 -0
- meowcat-1.2.35/meowcat/biology/cat_self.py +676 -0
- meowcat-1.2.35/meowcat/biology/cortex.py +288 -0
- meowcat-1.2.35/meowcat/biology/fusion_cycle.py +112 -0
- meowcat-1.2.35/meowcat/biology/growth.py +213 -0
- meowcat-1.2.35/meowcat/biology/metacognition.py +187 -0
- meowcat-1.2.35/meowcat/biology/pineal_gland.py +435 -0
- meowcat-1.2.35/meowcat/biology/roles.py +213 -0
- meowcat-1.2.35/meowcat/biology/scribble_pad.py +209 -0
- meowcat-1.2.35/meowcat/chain.py +214 -0
- meowcat-1.2.35/meowcat/cli/__init__.py +30 -0
- meowcat-1.2.35/meowcat/cli/app.py +80 -0
- meowcat-1.2.35/meowcat/cli/commands.py +379 -0
- meowcat-1.2.35/meowcat/cli/i18n.py +144 -0
- meowcat-1.2.35/meowcat/cli/locales/en.json +80 -0
- meowcat-1.2.35/meowcat/cli/locales/zh.json +80 -0
- meowcat-1.2.35/meowcat/cli/router.py +152 -0
- meowcat-1.2.35/meowcat/cli/theme.py +114 -0
- meowcat-1.2.35/meowcat/colony/__init__.py +976 -0
- meowcat-1.2.35/meowcat/colony/config.py +34 -0
- meowcat-1.2.35/meowcat/colony/federation.py +236 -0
- meowcat-1.2.35/meowcat/colony/memory.py +210 -0
- meowcat-1.2.35/meowcat/colony/registry.py +188 -0
- meowcat-1.2.35/meowcat/colony/rules.py +58 -0
- meowcat-1.2.35/meowcat/colony_transports.py +396 -0
- meowcat-1.2.35/meowcat/constants.py +76 -0
- meowcat-1.2.35/meowcat/coordination.py +213 -0
- meowcat-1.2.35/meowcat/defaults/__init__.py +110 -0
- meowcat-1.2.35/meowcat/defaults/factory.py +323 -0
- meowcat-1.2.35/meowcat/defaults/organs.py +1057 -0
- meowcat-1.2.35/meowcat/defaults/presets.py +290 -0
- meowcat-1.2.35/meowcat/defaults/renovated.py +974 -0
- meowcat-1.2.35/meowcat/defaults/stages.py +110 -0
- meowcat-1.2.35/meowcat/defaults/stores.py +177 -0
- meowcat-1.2.35/meowcat/diagnose.py +209 -0
- meowcat-1.2.35/meowcat/errors.py +189 -0
- meowcat-1.2.35/meowcat/events.py +381 -0
- meowcat-1.2.35/meowcat/events_payloads.py +296 -0
- meowcat-1.2.35/meowcat/examples/01_organ_host_only.py +50 -0
- meowcat-1.2.35/meowcat/examples/02_wiring_validation.py +44 -0
- meowcat-1.2.35/meowcat/examples/03_event_bus_only.py +41 -0
- meowcat-1.2.35/meowcat/examples/04_custom_cat.py +81 -0
- meowcat-1.2.35/meowcat/examples/05_minimal_chat_cat.py +117 -0
- meowcat-1.2.35/meowcat/examples/06_custom_organ.py +62 -0
- meowcat-1.2.35/meowcat/examples/07_custom_organ.py +134 -0
- meowcat-1.2.35/meowcat/examples/__init__.py +8 -0
- meowcat-1.2.35/meowcat/gateway/__init__.py +117 -0
- meowcat-1.2.35/meowcat/gateway/protocol.py +109 -0
- meowcat-1.2.35/meowcat/host.py +112 -0
- meowcat-1.2.35/meowcat/inject.py +129 -0
- meowcat-1.2.35/meowcat/log.py +90 -0
- meowcat-1.2.35/meowcat/loops.py +462 -0
- meowcat-1.2.35/meowcat/middleware.py +153 -0
- meowcat-1.2.35/meowcat/models.py +368 -0
- meowcat-1.2.35/meowcat/nervous.py +484 -0
- meowcat-1.2.35/meowcat/organ_base.py +110 -0
- meowcat-1.2.35/meowcat/organ_roles.py +67 -0
- meowcat-1.2.35/meowcat/path.py +263 -0
- meowcat-1.2.35/meowcat/perception.py +125 -0
- meowcat-1.2.35/meowcat/pipeline.py +54 -0
- meowcat-1.2.35/meowcat/pluggable.py +157 -0
- meowcat-1.2.35/meowcat/plus/__init__.py +42 -0
- meowcat-1.2.35/meowcat/plus/browser.py +251 -0
- meowcat-1.2.35/meowcat/plus/chroma_store.py +197 -0
- meowcat-1.2.35/meowcat/plus/crystallizer.py +227 -0
- meowcat-1.2.35/meowcat/plus/gateway/__init__.py +27 -0
- meowcat-1.2.35/meowcat/plus/gateway/cli_adapter.py +136 -0
- meowcat-1.2.35/meowcat/plus/gateway/http_adapter.py +184 -0
- meowcat-1.2.35/meowcat/plus/gateway/ipc_adapter.py +144 -0
- meowcat-1.2.35/meowcat/plus/gateway/webhook_adapter.py +183 -0
- meowcat-1.2.35/meowcat/plus/gateway/ws_adapter.py +274 -0
- meowcat-1.2.35/meowcat/plus/mcp_client.py +351 -0
- meowcat-1.2.35/meowcat/plus/skill_loader.py +214 -0
- meowcat-1.2.35/meowcat/plus/tools/__init__.py +22 -0
- meowcat-1.2.35/meowcat/plus/tools/command.py +75 -0
- meowcat-1.2.35/meowcat/plus/tools/file_ops.py +127 -0
- meowcat-1.2.35/meowcat/plus/tools/http_client.py +42 -0
- meowcat-1.2.35/meowcat/protocols.py +263 -0
- meowcat-1.2.35/meowcat/protocols_brain.py +359 -0
- meowcat-1.2.35/meowcat/protocols_sense.py +108 -0
- meowcat-1.2.35/meowcat/protocols_storage.py +131 -0
- meowcat-1.2.35/meowcat/protocols_voice.py +68 -0
- meowcat-1.2.35/meowcat/py.typed +0 -0
- meowcat-1.2.35/meowcat/reflex.py +307 -0
- meowcat-1.2.35/meowcat/storage/__init__.py +69 -0
- meowcat-1.2.35/meowcat/storage/jsonl_l6_store.py +87 -0
- meowcat-1.2.35/meowcat/storage/sqlite_graph_store.py +76 -0
- meowcat-1.2.35/meowcat/storage/vector_store.py +209 -0
- meowcat-1.2.35/meowcat/telemetry.py +193 -0
- meowcat-1.2.35/meowcat/testing.py +22 -0
- meowcat-1.2.35/meowcat/tools/__init__.py +64 -0
- meowcat-1.2.35/meowcat/tools/matcher.py +167 -0
- meowcat-1.2.35/meowcat/tools/paws.py +173 -0
- meowcat-1.2.35/meowcat/tools/skill.py +189 -0
- meowcat-1.2.35/meowcat/tools/tool.py +220 -0
- meowcat-1.2.35/meowcat/utils/__init__.py +14 -0
- meowcat-1.2.35/meowcat/utils/http.py +98 -0
- meowcat-1.2.35/meowcat/wiring.py +194 -0
- meowcat-1.2.35/meowcat/worker/__init__.py +288 -0
- meowcat-1.2.35/meowcat/worker/scheduler.py +175 -0
- meowcat-1.2.35/pyproject.toml +30 -0
- meowcat-1.2.35/tests/__init__.py +0 -0
- meowcat-1.2.35/tests/conftest.py +16 -0
- meowcat-1.2.35/tests/test_assembly.py +392 -0
- meowcat-1.2.35/tests/test_biology.py +102 -0
- meowcat-1.2.35/tests/test_core.py +228 -0
- meowcat-1.2.35/tests/test_models.py +287 -0
- meowcat-1.2.35/tests/test_protocols.py +238 -0
- meowcat-1.2.35/tests/test_reflex.py +190 -0
- meowcat-1.2.35/tests/test_v051_biology.py +117 -0
- meowcat-1.2.35/tests/test_v051_protocol_checked.py +320 -0
- meowcat-1.2.35/tests/test_v051_reflex.py +264 -0
- meowcat-1.2.35/tests/test_v051_wiring.py +198 -0
- meowcat-1.2.35/tests/test_v0522_primitives.py +312 -0
- meowcat-1.2.35/tests/test_v059_backward_compat.py +104 -0
- meowcat-1.2.35/tests/test_v059_cat_disabled.py +57 -0
- meowcat-1.2.35/tests/test_v059_host_only.py +86 -0
- meowcat-1.2.35/tests/test_v059_nervous_only.py +97 -0
- meowcat-1.2.35/tests/test_v059_reflex_arc.py +68 -0
- meowcat-1.2.35/tests/test_v1010_gateway.py +1001 -0
- meowcat-1.2.35/tests/test_v1011_synthesize_path.py +152 -0
- meowcat-1.2.35/tests/test_v1012_colony_federation.py +427 -0
- meowcat-1.2.35/tests/test_v1013_middleware.py +573 -0
- meowcat-1.2.35/tests/test_v1014_lifecycle_hooks.py +291 -0
- meowcat-1.2.35/tests/test_v1015_workflow.py +516 -0
- meowcat-1.2.35/tests/test_v1017_stages.py +101 -0
- meowcat-1.2.35/tests/test_v1018_reflex_security.py +68 -0
- meowcat-1.2.35/tests/test_v101_cat_isolation.py +130 -0
- meowcat-1.2.35/tests/test_v101_cat_permissions.py +174 -0
- meowcat-1.2.35/tests/test_v102_colony.py +392 -0
- meowcat-1.2.35/tests/test_v103_chain_rollback.py +290 -0
- meowcat-1.2.35/tests/test_v103_wiring_viz.py +152 -0
- meowcat-1.2.35/tests/test_v104_loopseq.py +454 -0
- meowcat-1.2.35/tests/test_v107_pluggable.py +495 -0
- meowcat-1.2.35/tests/test_v109_facade.py +383 -0
- meowcat-1.2.35/tests/test_v1107_group_chat.py +310 -0
- meowcat-1.2.35/tests/test_v1108_unified_entry.py +255 -0
- meowcat-1.2.35/tests/test_v1110_command_router.py +353 -0
- meowcat-1.2.35/tests/test_v1114_mcp_client.py +356 -0
- meowcat-1.2.35/tests/test_v1117_crystallizer.py +143 -0
- meowcat-1.2.35/tests/test_v1118_shared_store_log.py +153 -0
- meowcat-1.2.35/tests/test_v1119_persistent_storage.py +145 -0
- meowcat-1.2.35/tests/test_v1120_vector_memory.py +200 -0
- meowcat-1.2.35/tests/test_v1121_collective_intelligence.py +258 -0
- meowcat-1.2.35/tests/test_v1122_collective_growth.py +359 -0
- meowcat-1.2.35/tests/test_v1123_scribble_pad.py +249 -0
- meowcat-1.2.35/tests/test_v1124_pineal_gland.py +517 -0
- meowcat-1.2.35/tests/test_v1125_crystallizer_l2l3_cortex.py +339 -0
- meowcat-1.2.35/tests/test_v1126_active_growth.py +438 -0
- meowcat-1.2.35/tests/test_v1127_worldview_l2l3.py +263 -0
- meowcat-1.2.35/tests/test_v1128_global_registry.py +268 -0
- meowcat-1.2.35/tests/test_v1129_skeleton.py +424 -0
- meowcat-1.2.35/tests/test_v115_llm_shelf.py +301 -0
- meowcat-1.2.35/tests/test_v116_shared_area.py +315 -0
- meowcat-1.2.35/tests/test_v119_i18n.py +266 -0
- meowcat-1.2.35/tests/test_v120_cat_self.py +426 -0
- meowcat-1.2.35/tests/test_v1214_adapters.py +599 -0
- meowcat-1.2.35/tests/test_v1218_event_safety.py +261 -0
- meowcat-1.2.35/tests/test_v1219_circuit_breaker.py +288 -0
- meowcat-1.2.35/tests/test_v1220_bridge.py +237 -0
- meowcat-1.2.35/tests/test_v1221_telemetry.py +349 -0
- meowcat-1.2.35/tests/test_v1235_framework_fixes.py +212 -0
- meowcat-1.2.35/tests/test_v510_builtin_equivalence.py +156 -0
- meowcat-1.2.35/tests/test_v510_organ_spec.py +175 -0
- meowcat-1.2.35/tests/test_v527_path_registry.py +261 -0
- meowcat-1.2.35/tests/test_v528a_chain.py +331 -0
- meowcat-1.2.35/tests/test_v528b_loop.py +486 -0
- meowcat-1.2.35/tests/test_wiring.py +169 -0
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
name: CI
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches: [main]
|
|
6
|
+
paths-ignore: ["docs/**", "**.md"]
|
|
7
|
+
pull_request:
|
|
8
|
+
branches: [main]
|
|
9
|
+
|
|
10
|
+
env:
|
|
11
|
+
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
|
|
12
|
+
|
|
13
|
+
jobs:
|
|
14
|
+
test:
|
|
15
|
+
runs-on: ubuntu-latest
|
|
16
|
+
strategy:
|
|
17
|
+
matrix:
|
|
18
|
+
python-version: ["3.12", "3.13"]
|
|
19
|
+
steps:
|
|
20
|
+
- uses: actions/checkout@v4
|
|
21
|
+
- uses: actions/setup-python@v5
|
|
22
|
+
with:
|
|
23
|
+
python-version: ${{ matrix.python-version }}
|
|
24
|
+
- run: pip install -e ".[dev]"
|
|
25
|
+
- run: pytest tests/ -q --tb=short
|
|
26
|
+
|
|
27
|
+
purity:
|
|
28
|
+
runs-on: ubuntu-latest
|
|
29
|
+
steps:
|
|
30
|
+
- uses: actions/checkout@v4
|
|
31
|
+
- uses: actions/setup-python@v5
|
|
32
|
+
with:
|
|
33
|
+
python-version: "3.12"
|
|
34
|
+
- run: pip install -e .
|
|
35
|
+
- name: 零 meowagent 依赖检查
|
|
36
|
+
run: |
|
|
37
|
+
python -c "import meowcat; print('meowcat', meowcat.__version__)"
|
|
38
|
+
python -c "
|
|
39
|
+
import ast, os, pathlib
|
|
40
|
+
bad = []
|
|
41
|
+
for f in pathlib.Path('meowcat').rglob('*.py'):
|
|
42
|
+
try:
|
|
43
|
+
tree = ast.parse(f.read_text())
|
|
44
|
+
except SyntaxError:
|
|
45
|
+
continue
|
|
46
|
+
for node in ast.walk(tree):
|
|
47
|
+
if isinstance(node, ast.Import) and any('meowagent' in a.name for a in node.names):
|
|
48
|
+
bad.append(str(f))
|
|
49
|
+
elif isinstance(node, ast.ImportFrom) and node.module and 'meowagent' in node.module:
|
|
50
|
+
bad.append(str(f))
|
|
51
|
+
if bad:
|
|
52
|
+
raise SystemExit(f'FATAL: meowcat imports meowagent in: {bad}')
|
|
53
|
+
print('Purity check PASSED')
|
|
54
|
+
"
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
name: Release
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
tags: ["v*"]
|
|
6
|
+
|
|
7
|
+
env:
|
|
8
|
+
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
|
|
9
|
+
|
|
10
|
+
jobs:
|
|
11
|
+
pypi:
|
|
12
|
+
runs-on: ubuntu-latest
|
|
13
|
+
permissions:
|
|
14
|
+
id-token: write
|
|
15
|
+
steps:
|
|
16
|
+
- uses: actions/checkout@v4
|
|
17
|
+
- uses: actions/setup-python@v5
|
|
18
|
+
with:
|
|
19
|
+
python-version: "3.11"
|
|
20
|
+
- run: pip install build
|
|
21
|
+
- run: python -m build
|
|
22
|
+
- uses: pypa/gh-action-pypi-publish@release/v1
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Python
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*$py.class
|
|
5
|
+
*.so
|
|
6
|
+
*.egg-info/
|
|
7
|
+
dist/
|
|
8
|
+
build/
|
|
9
|
+
*.egg
|
|
10
|
+
|
|
11
|
+
# Virtual env
|
|
12
|
+
.venv/
|
|
13
|
+
venv/
|
|
14
|
+
|
|
15
|
+
# IDE
|
|
16
|
+
.idea/
|
|
17
|
+
.vscode/
|
|
18
|
+
*.swp
|
|
19
|
+
*.swo
|
|
20
|
+
|
|
21
|
+
# OS
|
|
22
|
+
.DS_Store
|
|
23
|
+
Thumbs.db
|
|
24
|
+
|
|
25
|
+
# Local
|
|
26
|
+
.env
|
|
27
|
+
*.log
|
|
28
|
+
.history/
|
|
29
|
+
.opencode/
|
|
30
|
+
.qoder/
|
|
31
|
+
docs/
|