lightclaw 0.0.1__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.
- lightclaw-0.0.1/PKG-INFO +458 -0
- lightclaw-0.0.1/README.md +424 -0
- lightclaw-0.0.1/pyproject.toml +73 -0
- lightclaw-0.0.1/setup.cfg +4 -0
- lightclaw-0.0.1/src/lightclaw/__init__.py +14 -0
- lightclaw-0.0.1/src/lightclaw/__main__.py +7 -0
- lightclaw-0.0.1/src/lightclaw/__version__.py +2 -0
- lightclaw-0.0.1/src/lightclaw/agents/__init__.py +9 -0
- lightclaw-0.0.1/src/lightclaw/agents/command_handler.py +380 -0
- lightclaw-0.0.1/src/lightclaw/agents/hooks/__init__.py +35 -0
- lightclaw-0.0.1/src/lightclaw/agents/hooks/bootstrap.py +100 -0
- lightclaw-0.0.1/src/lightclaw/agents/hooks/memory_compaction.py +219 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/__init__.py +28 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/command_handler.py +253 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/config.py +33 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/demo.py +561 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/event_bridge.py +206 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/graph_builder.py +46 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/message_converter.py +497 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/message_sanitizer.py +122 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/middleware.py +413 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/model_factory.py +161 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/session_store.py +139 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/tools/__init__.py +22 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/tools/_compat.py +33 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/tools/builtins.py +319 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/tools/mcp.py +165 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/tools/memory.py +84 -0
- lightclaw-0.0.1/src/lightclaw/agents/langgraph/tools/skills.py +125 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/en/AGENTS.md +132 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/en/BOOTSTRAP.md +47 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/en/HEARTBEAT.md +10 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/en/IDENTITY.md +29 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/en/MEMORY.md +28 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/en/SOUL.md +44 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/en/USER.md +30 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/zh/AGENTS.md +132 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/zh/BOOTSTRAP.md +47 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/zh/HEARTBEAT.md +10 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/zh/IDENTITY.md +29 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/zh/MEMORY.md +28 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/zh/SOUL.md +44 -0
- lightclaw-0.0.1/src/lightclaw/agents/md_files/zh/USER.md +30 -0
- lightclaw-0.0.1/src/lightclaw/agents/memory/__init__.py +14 -0
- lightclaw-0.0.1/src/lightclaw/agents/memory/agent_md_manager.py +129 -0
- lightclaw-0.0.1/src/lightclaw/agents/memory/lightclaw_memory.py +155 -0
- lightclaw-0.0.1/src/lightclaw/agents/memory/marks.py +11 -0
- lightclaw-0.0.1/src/lightclaw/agents/memory/memory_manager.py +519 -0
- lightclaw-0.0.1/src/lightclaw/agents/model_factory.py +13 -0
- lightclaw-0.0.1/src/lightclaw/agents/prompt.py +226 -0
- lightclaw-0.0.1/src/lightclaw/agents/schema.py +35 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/__init__.py +2 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/browser-visible/SKILL.md +52 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/cron/SKILL.md +96 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/LICENSE.txt +30 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/SKILL.md +488 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/__init__.py +1 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/accept_changes.py +138 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/comment.py +318 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/helpers/__init__.py +0 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/helpers/merge_runs.py +193 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/helpers/simplify_redlines.py +199 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/pack.py +160 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/mce/mc.xsd +75 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/soffice.py +218 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/unpack.py +132 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/validate.py +116 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/validators/__init__.py +15 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/validators/base.py +854 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/validators/docx.py +446 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/validators/pptx.py +272 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/office/validators/redlining.py +246 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/templates/comments.xml +3 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/templates/commentsExtended.xml +3 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/templates/commentsExtensible.xml +3 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/templates/commentsIds.xml +3 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/docx/scripts/templates/people.xml +3 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/file-reader/SKILL.md +61 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/find-skills/SKILL.md +133 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/himalaya/SKILL.md +230 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/himalaya/references/configuration.md +184 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/news/SKILL.md +50 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pdf/LICENSE.txt +30 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pdf/SKILL.md +314 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pdf/forms.md +294 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pdf/reference.md +612 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pdf/scripts/check_bounding_boxes.py +76 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pdf/scripts/check_fillable_fields.py +11 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pdf/scripts/convert_pdf_to_images.py +31 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pdf/scripts/create_validation_image.py +41 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pdf/scripts/extract_form_field_info.py +130 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pdf/scripts/extract_form_structure.py +129 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pdf/scripts/fill_fillable_fields.py +104 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pdf/scripts/fill_pdf_form_with_annotations.py +110 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/LICENSE.txt +30 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/SKILL.md +239 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/editing.md +205 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/pptxgenjs.md +420 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/__init__.py +0 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/add_slide.py +207 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/clean.py +296 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/helpers/__init__.py +0 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/helpers/merge_runs.py +193 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/helpers/simplify_redlines.py +199 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/pack.py +160 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/mce/mc.xsd +75 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/soffice.py +216 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/unpack.py +132 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/validate.py +116 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/validators/__init__.py +15 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/validators/base.py +854 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/validators/docx.py +446 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/validators/pptx.py +272 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/office/validators/redlining.py +246 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/pptx/scripts/thumbnail.py +306 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/LICENSE.txt +202 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/SKILL.md +479 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/agents/analyzer.md +274 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/agents/comparator.md +202 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/agents/grader.md +223 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/assets/eval_review.html +146 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/eval-viewer/generate_review.py +535 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/eval-viewer/viewer.html +1325 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/references/schemas.md +430 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/scripts/aggregate_benchmark.py +410 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/scripts/generate_report.py +363 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/scripts/improve_description.py +282 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/scripts/package_skill.py +138 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/scripts/quick_validate.py +129 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/scripts/run_eval.py +341 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/scripts/run_loop.py +404 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/skill-creator/scripts/utils.py +49 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/LICENSE.txt +30 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/SKILL.md +298 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/helpers/__init__.py +0 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/helpers/merge_runs.py +193 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/helpers/simplify_redlines.py +199 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/pack.py +160 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd +1499 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd +146 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd +1085 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd +11 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd +3081 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd +23 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd +185 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd +287 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd +1676 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd +28 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd +144 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd +174 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd +25 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd +18 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd +59 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd +56 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd +195 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd +582 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd +25 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd +4439 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd +570 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd +509 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd +12 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd +108 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd +96 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd +3646 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd +116 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd +42 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd +50 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd +49 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd +33 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/mce/mc.xsd +75 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/microsoft/wml-2010.xsd +560 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/microsoft/wml-2012.xsd +67 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/microsoft/wml-2018.xsd +14 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/microsoft/wml-cex-2018.xsd +20 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/microsoft/wml-cid-2016.xsd +13 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd +4 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/schemas/microsoft/wml-symex-2015.xsd +8 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/soffice.py +216 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/unpack.py +132 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/validate.py +116 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/validators/__init__.py +15 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/validators/base.py +854 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/validators/docx.py +446 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/validators/pptx.py +272 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/office/validators/redlining.py +246 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills/xlsx/scripts/recalc.py +207 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills_hub.py +1142 -0
- lightclaw-0.0.1/src/lightclaw/agents/skills_manager.py +874 -0
- lightclaw-0.0.1/src/lightclaw/agents/tools/__init__.py +34 -0
- lightclaw-0.0.1/src/lightclaw/agents/tools/browser_control.py +1989 -0
- lightclaw-0.0.1/src/lightclaw/agents/tools/browser_snapshot.py +248 -0
- lightclaw-0.0.1/src/lightclaw/agents/tools/desktop_screenshot.py +132 -0
- lightclaw-0.0.1/src/lightclaw/agents/tools/file_io.py +188 -0
- lightclaw-0.0.1/src/lightclaw/agents/tools/file_search.py +232 -0
- lightclaw-0.0.1/src/lightclaw/agents/tools/get_current_time.py +27 -0
- lightclaw-0.0.1/src/lightclaw/agents/tools/memory_search.py +65 -0
- lightclaw-0.0.1/src/lightclaw/agents/tools/result.py +111 -0
- lightclaw-0.0.1/src/lightclaw/agents/tools/send_file.py +95 -0
- lightclaw-0.0.1/src/lightclaw/agents/tools/shell.py +121 -0
- lightclaw-0.0.1/src/lightclaw/agents/utils/__init__.py +69 -0
- lightclaw-0.0.1/src/lightclaw/agents/utils/file_handling.py +234 -0
- lightclaw-0.0.1/src/lightclaw/agents/utils/message_processing.py +349 -0
- lightclaw-0.0.1/src/lightclaw/agents/utils/setup_utils.py +73 -0
- lightclaw-0.0.1/src/lightclaw/agents/utils/token_counting.py +185 -0
- lightclaw-0.0.1/src/lightclaw/agents/utils/tool_message_utils.py +389 -0
- lightclaw-0.0.1/src/lightclaw/app/__init__.py +0 -0
- lightclaw-0.0.1/src/lightclaw/app/_app.py +278 -0
- lightclaw-0.0.1/src/lightclaw/app/auth.py +274 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/__init__.py +13 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/base.py +755 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/console/__init__.py +6 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/console/channel.py +318 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/dashboard/__init__.py +6 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/dashboard/channel.py +318 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/dingtalk/__init__.py +6 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/dingtalk/channel.py +1713 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/dingtalk/constants.py +19 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/dingtalk/content_utils.py +120 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/dingtalk/handler.py +267 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/dingtalk/markdown.py +110 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/dingtalk/utils.py +33 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/discord_/__init__.py +6 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/discord_/channel.py +336 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/feishu/__init__.py +6 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/feishu/channel.py +1560 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/feishu/constants.py +23 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/feishu/utils.py +51 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/manager.py +506 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/qq/__init__.py +6 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/qq/channel.py +979 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/registry.py +77 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/renderer.py +393 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/schema.py +66 -0
- lightclaw-0.0.1/src/lightclaw/app/channels/utils.py +62 -0
- lightclaw-0.0.1/src/lightclaw/app/console_push_store.py +75 -0
- lightclaw-0.0.1/src/lightclaw/app/crons/__init__.py +0 -0
- lightclaw-0.0.1/src/lightclaw/app/crons/api.py +111 -0
- lightclaw-0.0.1/src/lightclaw/app/crons/executor.py +75 -0
- lightclaw-0.0.1/src/lightclaw/app/crons/heartbeat.py +143 -0
- lightclaw-0.0.1/src/lightclaw/app/crons/manager.py +292 -0
- lightclaw-0.0.1/src/lightclaw/app/crons/models.py +129 -0
- lightclaw-0.0.1/src/lightclaw/app/crons/repo/__init__.py +5 -0
- lightclaw-0.0.1/src/lightclaw/app/crons/repo/base.py +53 -0
- lightclaw-0.0.1/src/lightclaw/app/crons/repo/json_repo.py +43 -0
- lightclaw-0.0.1/src/lightclaw/app/dashboard_push_store.py +75 -0
- lightclaw-0.0.1/src/lightclaw/app/download_task_store.py +131 -0
- lightclaw-0.0.1/src/lightclaw/app/mcp/__init__.py +15 -0
- lightclaw-0.0.1/src/lightclaw/app/mcp/manager.py +310 -0
- lightclaw-0.0.1/src/lightclaw/app/mcp/watcher.py +332 -0
- lightclaw-0.0.1/src/lightclaw/app/routers/__init__.py +49 -0
- lightclaw-0.0.1/src/lightclaw/app/routers/agent.py +304 -0
- lightclaw-0.0.1/src/lightclaw/app/routers/config.py +161 -0
- lightclaw-0.0.1/src/lightclaw/app/routers/console.py +24 -0
- lightclaw-0.0.1/src/lightclaw/app/routers/dashboard.py +24 -0
- lightclaw-0.0.1/src/lightclaw/app/routers/envs.py +81 -0
- lightclaw-0.0.1/src/lightclaw/app/routers/mcp.py +405 -0
- lightclaw-0.0.1/src/lightclaw/app/routers/ollama_models.py +226 -0
- lightclaw-0.0.1/src/lightclaw/app/routers/providers.py +232 -0
- lightclaw-0.0.1/src/lightclaw/app/routers/skills.py +303 -0
- lightclaw-0.0.1/src/lightclaw/app/routers/upload.py +144 -0
- lightclaw-0.0.1/src/lightclaw/app/routers/workspace.py +401 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/__init__.py +31 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/api.py +495 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/event_bridge.py +44 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/manager.py +183 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/models.py +60 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/query_error_dump.py +103 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/repo/__init__.py +7 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/repo/base.py +132 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/repo/json_repo.py +70 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/run_controller.py +229 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/runner.py +490 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/session.py +123 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/session_factory.py +256 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/tool_registry.py +64 -0
- lightclaw-0.0.1/src/lightclaw/app/runner/utils.py +52 -0
- lightclaw-0.0.1/src/lightclaw/app/schemas/__init__.py +58 -0
- lightclaw-0.0.1/src/lightclaw/app/schemas/adapters.py +136 -0
- lightclaw-0.0.1/src/lightclaw/app/schemas/content_types.py +136 -0
- lightclaw-0.0.1/src/lightclaw/app/schemas/events.py +110 -0
- lightclaw-0.0.1/src/lightclaw/app/schemas/message_types.py +140 -0
- lightclaw-0.0.1/src/lightclaw/cli/__init__.py +0 -0
- lightclaw-0.0.1/src/lightclaw/cli/channels_cmd.py +835 -0
- lightclaw-0.0.1/src/lightclaw/cli/chats_cmd.py +265 -0
- lightclaw-0.0.1/src/lightclaw/cli/clean_cmd.py +63 -0
- lightclaw-0.0.1/src/lightclaw/cli/config_cmd.py +269 -0
- lightclaw-0.0.1/src/lightclaw/cli/cron_cmd.py +402 -0
- lightclaw-0.0.1/src/lightclaw/cli/env_cmd.py +86 -0
- lightclaw-0.0.1/src/lightclaw/cli/http.py +24 -0
- lightclaw-0.0.1/src/lightclaw/cli/init_cmd.py +96 -0
- lightclaw-0.0.1/src/lightclaw/cli/main.py +81 -0
- lightclaw-0.0.1/src/lightclaw/cli/providers_cmd.py +577 -0
- lightclaw-0.0.1/src/lightclaw/cli/run_cmd.py +85 -0
- lightclaw-0.0.1/src/lightclaw/cli/service_cmd.py +310 -0
- lightclaw-0.0.1/src/lightclaw/cli/skills_cmd.py +143 -0
- lightclaw-0.0.1/src/lightclaw/cli/uninstall_cmd.py +90 -0
- lightclaw-0.0.1/src/lightclaw/cli/utils.py +222 -0
- lightclaw-0.0.1/src/lightclaw/config/__init__.py +40 -0
- lightclaw-0.0.1/src/lightclaw/config/config.py +260 -0
- lightclaw-0.0.1/src/lightclaw/config/utils.py +97 -0
- lightclaw-0.0.1/src/lightclaw/config/watcher.py +203 -0
- lightclaw-0.0.1/src/lightclaw/constant.py +81 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/anthropic-hp89qtrg.png +0 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/dashscope-ClgxyOUM.png +0 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/deepseek-BfIKgrKz.png +0 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/feishu-yzJIGqLk.svg +1 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/groq-DxjL3oyr.png +0 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/index-2OacB_-K.css +1 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/index-B7jK9PYW.js +1054 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/lightclaw-logo-94n9bA-m.png +0 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/logo-CtVQif_m.svg +88 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/mimo-pbhfe3Fd.svg +17 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/minimax-B0Eo-1V9.png +0 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/modelscope-CJyewHiF.png +0 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/moonshot-DRX5773U.webp +0 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/ollama-BiKnEc5r.png +0 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/openai--2_yMGcs.png +0 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/openrouter-CT0jBAsT.png +0 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/assets/zhipu-CFgqzqwQ.png +0 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/index.html +14 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/lightclaw-logo.png +0 -0
- lightclaw-0.0.1/src/lightclaw/dashboard/lightclaw-symbol.png +0 -0
- lightclaw-0.0.1/src/lightclaw/envs/__init__.py +18 -0
- lightclaw-0.0.1/src/lightclaw/envs/store.py +122 -0
- lightclaw-0.0.1/src/lightclaw/providers/__init__.py +62 -0
- lightclaw-0.0.1/src/lightclaw/providers/models.py +138 -0
- lightclaw-0.0.1/src/lightclaw/providers/ollama_manager.py +224 -0
- lightclaw-0.0.1/src/lightclaw/providers/registry.py +453 -0
- lightclaw-0.0.1/src/lightclaw/providers/store.py +448 -0
- lightclaw-0.0.1/src/lightclaw/tokenizer/merges.txt +151387 -0
- lightclaw-0.0.1/src/lightclaw/tokenizer/tokenizer.json +303282 -0
- lightclaw-0.0.1/src/lightclaw/tokenizer/tokenizer_config.json +207 -0
- lightclaw-0.0.1/src/lightclaw/tokenizer/vocab.json +1 -0
- lightclaw-0.0.1/src/lightclaw/utils/__init__.py +0 -0
- lightclaw-0.0.1/src/lightclaw/utils/logging.py +120 -0
- lightclaw-0.0.1/src/lightclaw.egg-info/PKG-INFO +458 -0
- lightclaw-0.0.1/src/lightclaw.egg-info/SOURCES.txt +417 -0
- lightclaw-0.0.1/src/lightclaw.egg-info/dependency_links.txt +1 -0
- lightclaw-0.0.1/src/lightclaw.egg-info/entry_points.txt +2 -0
- lightclaw-0.0.1/src/lightclaw.egg-info/requires.txt +29 -0
- lightclaw-0.0.1/src/lightclaw.egg-info/top_level.txt +1 -0
- lightclaw-0.0.1/tests/test_message_sanitizer.py +266 -0
- lightclaw-0.0.1/tests/test_pr4_message_converter.py +377 -0
lightclaw-0.0.1/PKG-INFO
ADDED
|
@@ -0,0 +1,458 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: lightclaw
|
|
3
|
+
Version: 0.0.1
|
|
4
|
+
Summary: LightClaw is a **personal assistant** that runs in your own environment. It talks to you over multiple channels (DingTalk, Feishu, QQ, Discord, etc.) and runs scheduled tasks according to your configuration. **What it can do is driven by Skills — the possibilities are open-ended.** Built-in skills include cron, PDF/Office handling, news digest, file reading, and more; you can add custom skills. All data and tasks run on your machine; no third-party hosting.
|
|
5
|
+
Requires-Python: <3.14,>=3.10
|
|
6
|
+
Description-Content-Type: text/markdown
|
|
7
|
+
Requires-Dist: discord-py>=2.3
|
|
8
|
+
Requires-Dist: dingtalk-stream>=0.24.3
|
|
9
|
+
Requires-Dist: uvicorn>=0.40.0
|
|
10
|
+
Requires-Dist: apscheduler<4,>=3.11.2
|
|
11
|
+
Requires-Dist: playwright>=1.49.0
|
|
12
|
+
Requires-Dist: questionary>=2.1.1
|
|
13
|
+
Requires-Dist: mss>=9.0.0
|
|
14
|
+
Requires-Dist: reme-ai==0.3.0.0
|
|
15
|
+
Requires-Dist: transformers>=4.30.0
|
|
16
|
+
Requires-Dist: python-frontmatter>=1.0.0
|
|
17
|
+
Requires-Dist: python-dotenv>=1.0.0
|
|
18
|
+
Requires-Dist: python-socks>=2.5.3
|
|
19
|
+
Requires-Dist: onnxruntime<1.24
|
|
20
|
+
Requires-Dist: lark-oapi>=1.5.3
|
|
21
|
+
Requires-Dist: langchain>=1.2
|
|
22
|
+
Requires-Dist: langgraph>=1.0
|
|
23
|
+
Requires-Dist: langchain-openai>=1.1
|
|
24
|
+
Requires-Dist: mcp>=1.26
|
|
25
|
+
Requires-Dist: opentelemetry-exporter-otlp-proto-grpc>=1.20
|
|
26
|
+
Requires-Dist: googleapis-common-protos>=1.62
|
|
27
|
+
Provides-Extra: dev
|
|
28
|
+
Requires-Dist: pytest>=8.3.5; extra == "dev"
|
|
29
|
+
Requires-Dist: pytest-asyncio>=0.23.0; extra == "dev"
|
|
30
|
+
Requires-Dist: pre-commit>=4.2.0; extra == "dev"
|
|
31
|
+
Requires-Dist: pytest-cov>=6.2.1; extra == "dev"
|
|
32
|
+
Provides-Extra: ollama
|
|
33
|
+
Requires-Dist: ollama>=0.4.0; extra == "ollama"
|
|
34
|
+
|
|
35
|
+
# LightClaw — 自托管 AI 个人助手
|
|
36
|
+
|
|
37
|
+
> **LightClaw** 是一个运行在你自己设备上的 AI 个人助手。它通过多种聊天渠道(钉钉、飞书、QQ、Discord、Web 控制台)与你对话,还能执行定时任务。所有能力由 **Skills(技能)** 驱动 —— 一套可扩展的模块系统,既有内置技能也支持用户自建。全部数据保存在本地,无需第三方托管。
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## 📋 目录
|
|
42
|
+
|
|
43
|
+
- [功能特性](#-功能特性)
|
|
44
|
+
- [环境要求](#-环境要求)
|
|
45
|
+
- [快速开始](#-快速开始)
|
|
46
|
+
- [1. 克隆仓库](#1-克隆仓库)
|
|
47
|
+
- [2. 安装 Python 环境](#2-安装-python-环境)
|
|
48
|
+
- [3. 初始化工作区](#3-初始化工作区)
|
|
49
|
+
- [4. 启动 LightClaw](#4-启动-lightclaw)
|
|
50
|
+
- [配置指南](#-配置指南)
|
|
51
|
+
- [选择 LLM 模型](#选择-llm-模型)
|
|
52
|
+
- [配置聊天渠道](#配置聊天渠道)
|
|
53
|
+
- [管理技能](#管理技能)
|
|
54
|
+
- [配置定时任务](#配置定时任务)
|
|
55
|
+
- [MCP 服务集成](#mcp-服务集成)
|
|
56
|
+
- [Web 控制台](#-web-控制台)
|
|
57
|
+
- [CLI 命令参考](#-cli-命令参考)
|
|
58
|
+
- [内置技能一览](#-内置技能一览)
|
|
59
|
+
- [工作区目录结构](#-工作区目录结构)
|
|
60
|
+
- [系统架构](#-系统架构)
|
|
61
|
+
- [前端开发](#-前端开发)
|
|
62
|
+
- [代码质量与测试](#-代码质量与测试)
|
|
63
|
+
- [常见问题](#-常见问题)
|
|
64
|
+
- [许可证](#-许可证)
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## ✨ 功能特性
|
|
69
|
+
|
|
70
|
+
| 特性 | 说明 |
|
|
71
|
+
|------|------|
|
|
72
|
+
| **多渠道支持** | 钉钉、飞书、QQ、Discord、Web 控制台,一个助手多端连接 |
|
|
73
|
+
| **可扩展技能系统** | 内置 PDF/Office 处理、定时任务、新闻摘要、浏览器自动化、邮件管理等技能;支持用户自定义创建技能 |
|
|
74
|
+
| **多 LLM 供应商** | OpenAI、DashScope(阿里千问)、Ollama、本地模型(LLaMA-CPP、MLX)等 |
|
|
75
|
+
| **MCP 集成** | 支持 Model Context Protocol 服务接入,热加载 |
|
|
76
|
+
| **定时任务** | 基于 APScheduler 的 Cron 任务管理,让助手自动执行周期性工作 |
|
|
77
|
+
| **本地优先** | 所有配置、记忆、数据存储在 `~/.lightclaw/`,数据不离开你的设备 |
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## 🔧 环境要求
|
|
82
|
+
|
|
83
|
+
在开始之前,请确保你的系统满足以下条件:
|
|
84
|
+
|
|
85
|
+
| 依赖 | 版本要求 | 说明 |
|
|
86
|
+
|------|---------|------|
|
|
87
|
+
| **Python** | 3.10 – 3.13 | 推荐使用 3.12 |
|
|
88
|
+
| **Node.js** | 18+ | 仅在需要前端开发时安装 |
|
|
89
|
+
| **操作系统** | macOS / Linux / Windows | 均支持,macOS 可额外使用 MLX 本地推理 |
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
93
|
+
## 🚀 快速开始
|
|
94
|
+
|
|
95
|
+
### 1. 克隆仓库
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
git clone git@git.woa.com:orcakit/lightclaw.git
|
|
99
|
+
cd lightclaw
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### 2. 安装 Python 环境
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
# 创建虚拟环境
|
|
106
|
+
python -m venv .venv
|
|
107
|
+
|
|
108
|
+
# 激活虚拟环境
|
|
109
|
+
# macOS / Linux:
|
|
110
|
+
source .venv/bin/activate
|
|
111
|
+
# Windows:
|
|
112
|
+
.venv\Scripts\activate
|
|
113
|
+
|
|
114
|
+
# 安装 LightClaw
|
|
115
|
+
pip install ".[dev]"
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
#### 可选依赖
|
|
119
|
+
|
|
120
|
+
根据你的需求安装额外的本地推理后端:
|
|
121
|
+
|
|
122
|
+
```bash
|
|
123
|
+
# LLaMA-CPP 本地推理(支持 macOS / Linux / Windows)
|
|
124
|
+
pip install ".[llamacpp]"
|
|
125
|
+
|
|
126
|
+
# MLX 本地推理(仅 macOS Apple Silicon)
|
|
127
|
+
pip install ".[mlx]"
|
|
128
|
+
|
|
129
|
+
# Ollama 集成
|
|
130
|
+
pip install ".[ollama]"
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
### 3. 初始化工作区
|
|
134
|
+
|
|
135
|
+
首次使用时需要执行初始化,该命令会在 `~/.lightclaw/` 下创建配置文件和目录结构:
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
lightclaw init
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
初始化过程中,CLI 将以**交互式向导**引导你完成以下配置:
|
|
142
|
+
|
|
143
|
+
1. **选择语言**:中文 / English
|
|
144
|
+
2. **选择 LLM 供应商**:OpenAI、DashScope(阿里千问)、Ollama、本地模型等
|
|
145
|
+
3. **填写 API Key**:根据选择的供应商输入对应的密钥
|
|
146
|
+
4. **选择模型**:从供应商的可用模型列表中选择
|
|
147
|
+
|
|
148
|
+
### 4. 启动 LightClaw
|
|
149
|
+
|
|
150
|
+
```bash
|
|
151
|
+
# 启动应用(后端 + Web 控制台)
|
|
152
|
+
lightclaw run
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
或通过 Python 模块启动:
|
|
156
|
+
|
|
157
|
+
```bash
|
|
158
|
+
python -m lightclaw run
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
启动后:
|
|
162
|
+
- 🌐 **Web 控制台**:`http://localhost:80`
|
|
163
|
+
- 🔌 **后端 API**:`http://localhost:8088`
|
|
164
|
+
|
|
165
|
+
你现在可以打开浏览器访问 Web 控制台,开始与 LightClaw 对话了!
|
|
166
|
+
|
|
167
|
+
---
|
|
168
|
+
|
|
169
|
+
## ⚙️ 配置指南
|
|
170
|
+
|
|
171
|
+
所有配置存储在 `~/.lightclaw/config.json` 中,你可以通过 CLI 命令或直接编辑文件来修改配置。
|
|
172
|
+
|
|
173
|
+
### 选择 LLM 模型
|
|
174
|
+
|
|
175
|
+
LightClaw 支持多种 LLM 供应商,使用以下命令管理:
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
# 查看当前模型配置
|
|
179
|
+
lightclaw models
|
|
180
|
+
|
|
181
|
+
# 交互式切换供应商/模型
|
|
182
|
+
lightclaw models switch
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
支持的供应商:
|
|
186
|
+
|
|
187
|
+
| 供应商 | 说明 | 需要 API Key |
|
|
188
|
+
|--------|------|:----------:|
|
|
189
|
+
| OpenAI | GPT-4o、GPT-4、GPT-3.5 等 | ✅ |
|
|
190
|
+
| DashScope | 阿里千问系列 | ✅ |
|
|
191
|
+
| Ollama | 本地 Ollama 服务 | ❌ |
|
|
192
|
+
| LLaMA-CPP | 本地 GGUF 模型推理 | ❌ |
|
|
193
|
+
| MLX | macOS Apple Silicon 本地推理 | ❌ |
|
|
194
|
+
|
|
195
|
+
### 配置聊天渠道
|
|
196
|
+
|
|
197
|
+
使用以下命令安装和配置聊天渠道:
|
|
198
|
+
|
|
199
|
+
```bash
|
|
200
|
+
# 安装渠道(交互式选择)
|
|
201
|
+
lightclaw channels install
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
各渠道的配置要求:
|
|
205
|
+
|
|
206
|
+
| 渠道 | 需要的凭证 |
|
|
207
|
+
|------|-----------|
|
|
208
|
+
| **钉钉** | App Key、App Secret |
|
|
209
|
+
| **飞书** | App ID、App Secret |
|
|
210
|
+
| **QQ** | Bot AppID、Token |
|
|
211
|
+
| **Discord** | Bot Token |
|
|
212
|
+
| **iMessage** | macOS 本地 iMessage(无需额外配置) |
|
|
213
|
+
| **Web 控制台** | 默认启用,无需配置 |
|
|
214
|
+
|
|
215
|
+
### 管理技能
|
|
216
|
+
|
|
217
|
+
```bash
|
|
218
|
+
# 安装/启用技能
|
|
219
|
+
lightclaw skills install
|
|
220
|
+
|
|
221
|
+
# 查看已安装的技能
|
|
222
|
+
lightclaw skills
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
技能安装后会存放在 `~/.lightclaw/active_skills/` 目录中。你也可以在 `~/.lightclaw/customized_skills/` 中创建自定义技能。
|
|
226
|
+
|
|
227
|
+
### 配置定时任务
|
|
228
|
+
|
|
229
|
+
LightClaw 支持定时让助手自动执行任务,例如"每天早上 8 点发送新闻摘要":
|
|
230
|
+
|
|
231
|
+
```bash
|
|
232
|
+
# 管理定时任务
|
|
233
|
+
lightclaw crons
|
|
234
|
+
|
|
235
|
+
# 查看已有定时任务
|
|
236
|
+
lightclaw crons list
|
|
237
|
+
|
|
238
|
+
# 添加新定时任务
|
|
239
|
+
lightclaw crons add
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
定时任务定义存储在 `~/.lightclaw/jobs.json` 中。
|
|
243
|
+
|
|
244
|
+
### MCP 服务集成
|
|
245
|
+
|
|
246
|
+
LightClaw 支持通过 Model Context Protocol(MCP)接入外部工具服务,配置方法:
|
|
247
|
+
|
|
248
|
+
1. 在 `~/.lightclaw/config.json` 中的 `mcp_servers` 字段添加 MCP 服务配置
|
|
249
|
+
2. LightClaw 支持 MCP 服务的**热加载**,修改配置后无需重启即可生效
|
|
250
|
+
|
|
251
|
+
---
|
|
252
|
+
|
|
253
|
+
## 🖥️ Web 控制台
|
|
254
|
+
|
|
255
|
+
启动 LightClaw 后,在浏览器中访问 `http://localhost:80` 即可使用 Web 控制台。
|
|
256
|
+
|
|
257
|
+
Web 控制台提供以下功能:
|
|
258
|
+
- 💬 **对话界面**:与 LightClaw 进行实时对话
|
|
259
|
+
- ⚙️ **配置管理**:在线修改供应商、模型、渠道等设置
|
|
260
|
+
- 🧩 **技能管理**:查看、启用、禁用技能
|
|
261
|
+
- ⏰ **定时任务**:可视化管理 Cron 任务
|
|
262
|
+
- 🔗 **MCP 服务**:管理已接入的 MCP 工具服务
|
|
263
|
+
- 📊 **环境变量**:管理持久化的环境变量
|
|
264
|
+
|
|
265
|
+
---
|
|
266
|
+
|
|
267
|
+
## 📖 CLI 命令参考
|
|
268
|
+
|
|
269
|
+
| 命令 | 说明 |
|
|
270
|
+
|------|------|
|
|
271
|
+
| `lightclaw init` | 初始化 `~/.lightclaw/` 工作区,引导完成首次配置 |
|
|
272
|
+
| `lightclaw run` | 启动 LightClaw(后端 API + Web 控制台 + 所有已配置渠道) |
|
|
273
|
+
| `lightclaw channels install` | 安装并配置聊天渠道 |
|
|
274
|
+
| `lightclaw skills install` | 安装技能 |
|
|
275
|
+
| `lightclaw models` | 管理 LLM 模型供应商与模型选择 |
|
|
276
|
+
| `lightclaw crons` | 管理定时任务 |
|
|
277
|
+
| `lightclaw chats` | 管理对话历史 |
|
|
278
|
+
| `lightclaw env` | 管理持久化环境变量 |
|
|
279
|
+
| `lightclaw clean` | 清理临时文件和缓存 |
|
|
280
|
+
| `lightclaw uninstall` | 卸载 LightClaw 并清理工作区 |
|
|
281
|
+
|
|
282
|
+
全局选项:
|
|
283
|
+
|
|
284
|
+
```bash
|
|
285
|
+
lightclaw --host 0.0.0.0 --port 9090 run # 自定义主机和端口
|
|
286
|
+
lightclaw -h # 查看帮助信息
|
|
287
|
+
```
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
|
|
291
|
+
## 🧩 内置技能一览
|
|
292
|
+
|
|
293
|
+
| 技能 | 功能说明 |
|
|
294
|
+
|------|---------|
|
|
295
|
+
| `cron` | 创建和管理定时任务,让 LightClaw 定期自动执行指定工作 |
|
|
296
|
+
| `pdf` | PDF 文档的提取、编辑、合并 |
|
|
297
|
+
| `xlsx` | Excel 电子表格的读取和写入 |
|
|
298
|
+
| `pptx` | PowerPoint 演示文稿的读取和创建 |
|
|
299
|
+
| `docx` | Word 文档的读取和编辑 |
|
|
300
|
+
| `file_reader` | 读取文本、JSON、YAML 等格式的文件 |
|
|
301
|
+
| `news` | 获取新闻并生成摘要 |
|
|
302
|
+
| `browser_visible` | 浏览器自动化操作与网页截图 |
|
|
303
|
+
| `himalaya` | 基于 IMAP 协议的邮件管理 |
|
|
304
|
+
| `skill-creator` | 帮助你创建自定义技能的内置工具 |
|
|
305
|
+
| `find-skills` | 搜索和发现更多可用技能 |
|
|
306
|
+
|
|
307
|
+
> 💡 **提示**:你可以通过 `skill-creator` 技能让 LightClaw 帮你创建全新的自定义技能,无需手动编写代码。
|
|
308
|
+
|
|
309
|
+
---
|
|
310
|
+
|
|
311
|
+
## 📁 工作区目录结构
|
|
312
|
+
|
|
313
|
+
`lightclaw init` 执行后会在用户目录下创建以下结构:
|
|
314
|
+
|
|
315
|
+
```
|
|
316
|
+
~/.lightclaw/
|
|
317
|
+
├── config.json # 核心配置文件(供应商、模型、渠道凭证等)
|
|
318
|
+
├── jobs.json # 定时任务定义
|
|
319
|
+
├── chats.json # 对话历史记录
|
|
320
|
+
├── envs.json # 持久化环境变量
|
|
321
|
+
├── active_skills/ # 已启用的技能
|
|
322
|
+
├── customized_skills/ # 用户自定义技能
|
|
323
|
+
├── custom_channels/ # 自定义渠道插件
|
|
324
|
+
└── memory/
|
|
325
|
+
├── MEMORY.md # 长期记忆(LightClaw 从对话中学到的信息)
|
|
326
|
+
├── PROFILE.md # 用户画像(你的偏好和习惯)
|
|
327
|
+
└── YYYY-MM-DD.md # 每日笔记
|
|
328
|
+
```
|
|
329
|
+
|
|
330
|
+
### 关键文件说明
|
|
331
|
+
|
|
332
|
+
- **`config.json`**:最核心的配置文件,包含 LLM 供应商设置、API Key、模型选择、渠道凭证等。建议通过 CLI 命令修改,也可以直接编辑。
|
|
333
|
+
- **`memory/`**:LightClaw 的记忆系统。MEMORY.md 存储长期记忆,PROFILE.md 存储用户画像,每日笔记自动记录。
|
|
334
|
+
- **`active_skills/`**:将技能文件夹放入此目录即可启用对应技能。
|
|
335
|
+
- **`customized_skills/`**:你自己创建的技能存放在这里。
|
|
336
|
+
|
|
337
|
+
---
|
|
338
|
+
|
|
339
|
+
## 🏗️ 系统架构
|
|
340
|
+
|
|
341
|
+
```
|
|
342
|
+
┌──────────────────────────────────────────────────────┐
|
|
343
|
+
│ LightClaw 应用 │
|
|
344
|
+
│ │
|
|
345
|
+
│ React 控制台 (端口 80) ◄── REST ──► FastAPI (8088) │
|
|
346
|
+
│ │
|
|
347
|
+
│ 渠道集成 (钉钉、飞书、QQ、Discord…) │
|
|
348
|
+
│ │
|
|
349
|
+
│ Agent 引擎: ReAct Agent → 技能中心 → LLM │
|
|
350
|
+
│ │
|
|
351
|
+
│ 配置 / 记忆 / 任务 (存储在 ~/.lightclaw/) │
|
|
352
|
+
└──────────────────────────────────────────────────────┘
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
**请求处理流程:**
|
|
356
|
+
|
|
357
|
+
```
|
|
358
|
+
用户 (通过渠道) → ChannelManager → Runner → ReAct Agent
|
|
359
|
+
↓
|
|
360
|
+
LLM 供应商
|
|
361
|
+
↓
|
|
362
|
+
技能执行器
|
|
363
|
+
↓
|
|
364
|
+
响应 → 返回渠道
|
|
365
|
+
```
|
|
366
|
+
|
|
367
|
+
---
|
|
368
|
+
|
|
369
|
+
## 🖥️ 前端开发
|
|
370
|
+
|
|
371
|
+
如果你需要参与 Web 控制台的前端开发:
|
|
372
|
+
|
|
373
|
+
```bash
|
|
374
|
+
# 进入前端项目目录
|
|
375
|
+
cd console
|
|
376
|
+
|
|
377
|
+
# 安装依赖
|
|
378
|
+
npm install
|
|
379
|
+
|
|
380
|
+
# 启动开发服务器(访问 http://localhost:80)
|
|
381
|
+
npm run dev
|
|
382
|
+
|
|
383
|
+
# 构建生产版本
|
|
384
|
+
npm run build
|
|
385
|
+
|
|
386
|
+
# 代码检查(ESLint + TypeScript)
|
|
387
|
+
npm run lint
|
|
388
|
+
|
|
389
|
+
# 代码格式化(Prettier)
|
|
390
|
+
npm run format
|
|
391
|
+
```
|
|
392
|
+
|
|
393
|
+
前端技术栈:React + TypeScript + Vite + Ant Design
|
|
394
|
+
|
|
395
|
+
---
|
|
396
|
+
|
|
397
|
+
## ✅ 代码质量与测试
|
|
398
|
+
|
|
399
|
+
```bash
|
|
400
|
+
# 代码格式化(行宽 79 字符)
|
|
401
|
+
python -m black src/lightclaw/
|
|
402
|
+
|
|
403
|
+
# Lint 检查
|
|
404
|
+
flake8 src/lightclaw/
|
|
405
|
+
|
|
406
|
+
# 类型检查
|
|
407
|
+
mypy src/lightclaw/
|
|
408
|
+
|
|
409
|
+
# 运行 pre-commit 钩子
|
|
410
|
+
pre-commit run --all-files
|
|
411
|
+
|
|
412
|
+
# 运行全部测试
|
|
413
|
+
pytest
|
|
414
|
+
|
|
415
|
+
# 详细模式运行,遇到首个失败即停止
|
|
416
|
+
pytest -xvs
|
|
417
|
+
```
|
|
418
|
+
|
|
419
|
+
---
|
|
420
|
+
|
|
421
|
+
## ❓ 常见问题
|
|
422
|
+
|
|
423
|
+
### Q: 启动时端口被占用怎么办?
|
|
424
|
+
|
|
425
|
+
使用自定义端口启动:
|
|
426
|
+
|
|
427
|
+
```bash
|
|
428
|
+
lightclaw --port 9090 run
|
|
429
|
+
```
|
|
430
|
+
|
|
431
|
+
### Q: 如何切换语言?
|
|
432
|
+
|
|
433
|
+
重新运行初始化命令,或直接编辑 `~/.lightclaw/config.json` 中的 `language` 字段。
|
|
434
|
+
|
|
435
|
+
### Q: 如何使用本地模型?
|
|
436
|
+
|
|
437
|
+
1. 安装对应的本地推理后端:
|
|
438
|
+
```bash
|
|
439
|
+
pip install ".[llamacpp]" # 或 ".[mlx]"(仅 macOS)
|
|
440
|
+
```
|
|
441
|
+
2. 通过 `lightclaw models` 命令切换到本地模型供应商
|
|
442
|
+
3. 选择或下载要使用的模型
|
|
443
|
+
|
|
444
|
+
### Q: 如何创建自定义技能?
|
|
445
|
+
|
|
446
|
+
有两种方式:
|
|
447
|
+
1. **让 LightClaw 帮你创建**:在对话中告诉 LightClaw 你需要什么技能,内置的 `skill-creator` 会自动生成
|
|
448
|
+
2. **手动创建**:在 `~/.lightclaw/customized_skills/` 目录下创建技能文件夹,包含 `SKILL.md` 描述文件
|
|
449
|
+
|
|
450
|
+
### Q: 数据存储在哪里?
|
|
451
|
+
|
|
452
|
+
所有数据都存储在本地的 `~/.lightclaw/` 目录下,不会上传到任何第三方服务器。你可以随时备份或迁移这个目录。
|
|
453
|
+
|
|
454
|
+
---
|
|
455
|
+
|
|
456
|
+
## 📄 许可证
|
|
457
|
+
|
|
458
|
+
详见 [LICENSE](LICENSE) 文件。
|