{"owner":"agentscope-ai","repo":"agentscope","hasSkills":true,"hasMcp":false,"mcpConfig":null,"found":[".github/copilot-instructions.md"],"skills":{".github/copilot-instructions.md":"# AgentScope Code Review Guide\n\nYou should conduct a strict code review. Each requirement is labeled with priority:\n- **[MUST]** must be satisfied or PR will be rejected\n- **[SHOULD]** strongly recommended\n- **[MAY]** optional suggestion\n\n## 1. Code Quality\n\n### [MUST] Lazy Loading\n- **Third-party library** dependencies should be imported at the point of use, avoid centralized imports at file top\n  - The `Third-party library` refers to libraries not included in the `dependencies` variable in `pyproject.toml`.\n- For base class imports, use factory pattern:\n```python\ndef get_xxx_cls() -> \"MyClass\":\n    from xxx import BaseClass\n    class MyClass(BaseClass): ...\n    return MyClass\n```\n\n### [SHOULD] Code Conciseness\nAfter understanding the code intent, check if it can be optimized:\n- Avoid unnecessary temporary variables\n- Merge duplicate code blocks\n- Prioritize reusing existing utility functions\n\n### [MUST] Encapsulation Standards\n- All Python files under `src/agentscope` should be named with `_` prefix, and exposure controlled through `__init__.py`\n- Classes and functions used internally by the framework that don't need to be exposed to users must be named with `_` prefix\n\n## 2. [MUST] Code Security\n- Prohibit hardcoding API keys/tokens/passwords\n- Use environment variables or configuration files for management\n- Check for debug information and temporary credentials\n- Check for injection attack risks (SQL/command/code injection, etc.)\n\n## 3. [MUST] Testing & Dependencies\n- New features must include unit tests\n- New dependencies need to be added to the corresponding section in `pyproject.toml`\n- Dependencies for non-core scenarios should not be added to the minimal dependency list\n- Test assertions MUST compare the entire data structure rather than asserting individual fields, so reviewers can quickly understand the test intent. For random or non-deterministic fields, use `AnyString` and `AnyValue` from `tests/utils.py` for matching\n\n## 4. Code Standards\n\n### [MUST] Comment Standards\n- **Use English**\n- All classes/methods must have complete docstrings, strictly following the template:\n```python\ndef func(a: str, b: int | None = None) -> str:\n    \"\"\"{description}\n\n    Args:\n        a (`str`):\n            The argument a\n        b (`int | None`, optional):\n            The argument b\n\n    Returns:\n        `str`:\n            The return str\n    \"\"\"\n```\n- Use reStructuredText syntax for special content:\n```python\nclass MyClass:\n    \"\"\"xxx\n\n    `Example link <https://xxx>`_\n\n    .. note:: Example note\n\n    .. tip:: Example tip\n\n    .. important:: Example important info\n\n    .. code-block:: python\n\n        def hello_world():\n            print(\"Hello world!\")\n\n    \"\"\"\n```\n\n### [MUST] Pre-commit Checks\n- **Strict review**: In most cases, code should be modified rather than skipping checks\n- **File-level check skipping is prohibited**\n- Only allowed skip: agent class system prompt parameters (to avoid `\\n` formatting issues)\n\n---\n\n## 5. Git Standards\n\n### [MUST] PR Title\n- Follow Conventional Commits\n- Must use prefixes: `feat/fix/docs/ci/refactor/test`, etc.\n- Format: `feat(scope): description`\n- Example: `feat(memory): add redis cache support`"},"files":{".github/copilot-instructions.md":"# AgentScope Code Review Guide\n\nYou should conduct a strict code review. Each requirement is labeled with priority:\n- **[MUST]** must be satisfied or PR will be rejected\n- **[SHOULD]** strongly recommended\n- **[MAY]** optional suggestion\n\n## 1. Code Quality\n\n### [MUST] Lazy Loading\n- **Third-party library** dependencies should be imported at the point of use, avoid centralized imports at file top\n  - The `Third-party library` refers to libraries not included in the `dependencies` variable in `pyproject.toml`.\n- For base class imports, use factory pattern:\n```python\ndef get_xxx_cls() -> \"MyClass\":\n    from xxx import BaseClass\n    class MyClass(BaseClass): ...\n    return MyClass\n```\n\n### [SHOULD] Code Conciseness\nAfter understanding the code intent, check if it can be optimized:\n- Avoid unnecessary temporary variables\n- Merge duplicate code blocks\n- Prioritize reusing existing utility functions\n\n### [MUST] Encapsulation Standards\n- All Python files under `src/agentscope` should be named with `_` prefix, and exposure controlled through `__init__.py`\n- Classes and functions used internally by the framework that don't need to be exposed to users must be named with `_` prefix\n\n## 2. [MUST] Code Security\n- Prohibit hardcoding API keys/tokens/passwords\n- Use environment variables or configuration files for management\n- Check for debug information and temporary credentials\n- Check for injection attack risks (SQL/command/code injection, etc.)\n\n## 3. [MUST] Testing & Dependencies\n- New features must include unit tests\n- New dependencies need to be added to the corresponding section in `pyproject.toml`\n- Dependencies for non-core scenarios should not be added to the minimal dependency list\n- Test assertions MUST compare the entire data structure rather than asserting individual fields, so reviewers can quickly understand the test intent. For random or non-deterministic fields, use `AnyString` and `AnyValue` from `tests/utils.py` for matching\n\n## 4. Code Standards\n\n### [MUST] Comment Standards\n- **Use English**\n- All classes/methods must have complete docstrings, strictly following the template:\n```python\ndef func(a: str, b: int | None = None) -> str:\n    \"\"\"{description}\n\n    Args:\n        a (`str`):\n            The argument a\n        b (`int | None`, optional):\n            The argument b\n\n    Returns:\n        `str`:\n            The return str\n    \"\"\"\n```\n- Use reStructuredText syntax for special content:\n```python\nclass MyClass:\n    \"\"\"xxx\n\n    `Example link <https://xxx>`_\n\n    .. note:: Example note\n\n    .. tip:: Example tip\n\n    .. important:: Example important info\n\n    .. code-block:: python\n\n        def hello_world():\n            print(\"Hello world!\")\n\n    \"\"\"\n```\n\n### [MUST] Pre-commit Checks\n- **Strict review**: In most cases, code should be modified rather than skipping checks\n- **File-level check skipping is prohibited**\n- Only allowed skip: agent class system prompt parameters (to avoid `\\n` formatting issues)\n\n---\n\n## 5. Git Standards\n\n### [MUST] PR Title\n- Follow Conventional Commits\n- Must use prefixes: `feat/fix/docs/ci/refactor/test`, etc.\n- Format: `feat(scope): description`\n- Example: `feat(memory): add redis cache support`"},"items":[{"name":"copilot-instructions.md","path":".github/copilot-instructions.md","title":"copilot-instructions.md","content":"# AgentScope Code Review Guide\n\nYou should conduct a strict code review. Each requirement is labeled with priority:\n- **[MUST]** must be satisfied or PR will be rejected\n- **[SHOULD]** strongly recommended\n- **[MAY]** optional suggestion\n\n## 1. Code Quality\n\n### [MUST] Lazy Loading\n- **Third-party library** dependencies should be imported at the point of use, avoid centralized imports at file top\n  - The `Third-party library` refers to libraries not included in the `dependencies` variable in `pyproject.toml`.\n- For base class imports, use factory pattern:\n```python\ndef get_xxx_cls() -> \"MyClass\":\n    from xxx import BaseClass\n    class MyClass(BaseClass): ...\n    return MyClass\n```\n\n### [SHOULD] Code Conciseness\nAfter understanding the code intent, check if it can be optimized:\n- Avoid unnecessary temporary variables\n- Merge duplicate code blocks\n- Prioritize reusing existing utility functions\n\n### [MUST] Encapsulation Standards\n- All Python files under `src/agentscope` should be named with `_` prefix, and exposure controlled through `__init__.py`\n- Classes and functions used internally by the framework that don't need to be exposed to users must be named with `_` prefix\n\n## 2. [MUST] Code Security\n- Prohibit hardcoding API keys/tokens/passwords\n- Use environment variables or configuration files for management\n- Check for debug information and temporary credentials\n- Check for injection attack risks (SQL/command/code injection, etc.)\n\n## 3. [MUST] Testing & Dependencies\n- New features must include unit tests\n- New dependencies need to be added to the corresponding section in `pyproject.toml`\n- Dependencies for non-core scenarios should not be added to the minimal dependency list\n- Test assertions MUST compare the entire data structure rather than asserting individual fields, so reviewers can quickly understand the test intent. For random or non-deterministic fields, use `AnyString` and `AnyValue` from `tests/utils.py` for matching\n\n## 4. Code Standards\n\n### [MUST] Comment Standards\n- **Use English**\n- All classes/methods must have complete docstrings, strictly following the template:\n```python\ndef func(a: str, b: int | None = None) -> str:\n    \"\"\"{description}\n\n    Args:\n        a (`str`):\n            The argument a\n        b (`int | None`, optional):\n            The argument b\n\n    Returns:\n        `str`:\n            The return str\n    \"\"\"\n```\n- Use reStructuredText syntax for special content:\n```python\nclass MyClass:\n    \"\"\"xxx\n\n    `Example link <https://xxx>`_\n\n    .. note:: Example note\n\n    .. tip:: Example tip\n\n    .. important:: Example important info\n\n    .. code-block:: python\n\n        def hello_world():\n            print(\"Hello world!\")\n\n    \"\"\"\n```\n\n### [MUST] Pre-commit Checks\n- **Strict review**: In most cases, code should be modified rather than skipping checks\n- **File-level check skipping is prohibited**\n- Only allowed skip: agent class system prompt parameters (to avoid `\\n` formatting issues)\n\n---\n\n## 5. Git Standards\n\n### [MUST] PR Title\n- Follow Conventional Commits\n- Must use prefixes: `feat/fix/docs/ci/refactor/test`, etc.\n- Format: `feat(scope): description`\n- Example: `feat(memory): add redis cache support`","category":".github","tokens":798}]}