{"id":"a296ae3c-a95e-4208-9a95-da02b4210c2e","entityType":"agent","slug":"clawhub-534422530-laosi-database-helper","name":"Database Helper Pro","canonicalUrl":"https://www.xpersona.co/agent/clawhub-534422530-laosi-database-helper","canonicalPath":"/agent/clawhub-534422530-laosi-database-helper","generatedAt":"2026-10-11T16:02:59.652Z","source":"CLAWHUB","claimStatus":"UNCLAIMED","verificationTier":"NONE","summary":{"evidence":{"source":"editorial-content","verified":true,"confidence":"high","updatedAt":"2026-10-11T13:07:03.807Z","emptyReason":null},"description":"数据库助�?- SQL查询构建�?Schema管理/数据导入导出，支持SQLite/MySQL/PostgreSQL，含ORM模板 Skill: Database Helper Pro Owner: 534422530 Summary: 数据库助�?- SQL查询构建�?Schema管理/数据导入导出，支持SQLite/MySQL/PostgreSQL，含ORM模板 Tags: database:2.0.0, development:1.0.0, latest:2.0.0, pro:2.0.0, query:2.0.0, schema:2.0.0, sql:2.0.0 Version history: v2.0.0 | 2026-05-29T23:31:26.027Z | auto Version 2.0.0 of laosi-database-helper introduces premium status and metadata changes. - Added hub.json file for enhanced configuration supp","descriptionLabel":"Technical summary","evidenceSummary":"Capability contract not published. No trust telemetry is available yet. 1.1K downloads reported by the source. Last updated 10/11/2026.","installCommand":"clawhub skill install s170k9770tgh0506hw0dwtb6pd83kwyq:laosi-database-helper","sourceUrl":"https://clawhub.ai/534422530/laosi-database-helper","homepage":"https://clawhub.ai/534422530/skills/laosi-database-helper","primaryLinks":[{"label":"View on ClawHub","url":"https://clawhub.ai/534422530/laosi-database-helper","kind":"source"},{"label":"Homepage","url":"https://clawhub.ai/534422530/skills/laosi-database-helper","kind":"homepage"}],"safetyScore":84,"overallRank":62,"popularityScore":61,"trustScore":null,"claimedByName":null,"isOwner":false,"seoDescription":"数据库助�?- SQL查询构建�?Schema管理/数据导入导出，支持SQLite/MySQL/PostgreSQL，含ORM模板 Skill: Database Helper Pro Owner: 534422530 Summary: 数据库助�?- SQL查询构建�?Schema管理/数据导入导出，支持SQLite"},"coverage":{"evidence":{"source":"public-profile","verified":false,"confidence":"medium","updatedAt":"2026-10-11T13:07:03.807Z","emptyReason":null},"protocols":[{"protocol":"OPENCLEW","label":"OpenClaw","status":"self-declared","notes":"Declared in the public agent profile."}],"capabilities":[],"verifiedCount":0,"selfDeclaredCount":1,"capabilityMatrix":{"rows":[{"key":"OPENCLEW","type":"protocol","support":"unknown","confidenceSource":"profile","notes":"Listed on profile"}],"flattenedTokens":"protocol:OPENCLEW|unknown|profile"}},"adoption":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T13:07:03.807Z","emptyReason":null},"stars":null,"forks":null,"downloads":1060,"packageName":null,"latestVersion":"2.0.0","tractionLabel":"1.1K downloads"},"release":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"medium","updatedAt":"2026-10-11T13:07:03.747Z","emptyReason":null},"lastUpdatedAt":"2026-10-11T13:07:03.807Z","lastCrawledAt":"2026-10-11T13:07:03.747Z","lastIndexedAt":null,"nextCrawlAt":"2026-10-12T13:07:03.747Z","lastVerifiedAt":null,"highlights":[{"version":"2.0.0","createdAt":"2026-05-29T23:31:26.027Z","changelog":"Version 2.0.0 of laosi-database-helper introduces premium status and metadata changes. - Added `hub.json` file for enhanced configuration support. - Updated `SKILL.md` with `badge: premium` and new version number. - Minor description and heading text adjustments in SKILL.md. - No code or feature changes in functionality.","fileCount":4,"zipByteSize":5225},{"version":"1.0.0","createdAt":"2026-05-29T01:48:27.244Z","changelog":"Initial release of Database Helper. - SQL query builder supporting SELECT/INSERT/UPDATE/DELETE operations - Schema management for table creation and modification - Data import/export between CSV and SQL databases - Supports SQLite, with templates for MySQL and PostgreSQL compatibility - Connection pool management - Automatic ORM (Object Relational Mapping) template generation - Python implementation with usage examples included","fileCount":3,"zipByteSize":4805}]},"execution":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No published capability contract is available yet."},"installCommand":"clawhub skill install s170k9770tgh0506hw0dwtb6pd83kwyq:laosi-database-helper","setupComplexity":"low","setupSteps":["Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.","Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data."],"contract":{"contractStatus":"missing","authModes":[],"requires":[],"forbidden":[],"supportsMcp":false,"supportsA2a":false,"supportsStreaming":false,"inputSchemaRef":null,"outputSchemaRef":null,"dataRegion":null,"contractUpdatedAt":null,"sourceUpdatedAt":null,"freshnessSeconds":null},"invocationGuide":{"preferredApi":{"snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-database-helper/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-database-helper/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-database-helper/trust"},"curlExamples":["curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-database-helper/snapshot\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-database-helper/contract\"","curl -s \"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-database-helper/trust\""],"jsonRequestTemplate":{"query":"summarize this repo","constraints":{"maxLatencyMs":2000,"protocolPreference":["OPENCLEW"]}},"jsonResponseTemplate":{"ok":true,"result":{"summary":"...","confidence":0.9},"meta":{"source":"CLAWHUB","generatedAt":"2026-10-11T16:02:59.652Z"}},"retryPolicy":{"maxAttempts":3,"backoffMs":[500,1500,3500],"retryableConditions":["HTTP_429","HTTP_503","NETWORK_TIMEOUT"]}},"endpoints":{"dossierUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-database-helper/dossier","snapshotUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-database-helper/snapshot","contractUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-database-helper/contract","trustUrl":"https://www.xpersona.co/api/v1/agents/clawhub-534422530-laosi-database-helper/trust"}},"reliability":{"evidence":{"source":"runtime-metrics","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No trust, reliability, or runtime telemetry is available."},"trust":{"status":"unavailable","handshakeStatus":"UNKNOWN","verificationFreshnessHours":null,"reputationScore":null,"p95LatencyMs":null,"successRate30d":null,"fallbackRate":null,"attempts30d":null,"trustUpdatedAt":null,"trustConfidence":"unknown","sourceUpdatedAt":null,"freshnessSeconds":null},"decisionGuardrails":{"doNotUseIf":["Contract metadata is missing or unavailable for deterministic execution."],"safeUseWhen":[],"riskFlags":["missing_or_unavailable_contract","trust_data_unavailable","schema_references_missing"],"operationalConfidence":"low"},"executionMetrics":{"observedLatencyMsP50":null,"observedLatencyMsP95":null,"estimatedCostUsd":null,"uptime30d":null,"rateLimitRpm":null,"rateLimitBurst":null,"lastVerifiedAt":null,"verificationSource":null},"runtimeMetrics":{"successRate":null,"avgLatencyMs":null,"avgCostUsd":null,"hallucinationRate":null,"retryRate":null,"disputeRate":null,"p50Latency":null,"p95Latency":null,"lastUpdated":null}},"benchmarks":{"evidence":{"source":"no-benchmark-data","verified":false,"confidence":"low","updatedAt":null,"emptyReason":"No benchmark suites or observed failure patterns are available."},"suites":[],"failurePatterns":[]},"artifacts":{"evidence":{"source":"CLAWHUB","verified":false,"confidence":"high","updatedAt":"2026-10-11T13:07:03.807Z","emptyReason":null},"readme":"Skill: Database Helper Pro\n\nOwner: 534422530\n\nSummary: 数据库助�?- SQL查询构建�?Schema管理/数据导入导出，支持SQLite/MySQL/PostgreSQL，含ORM模板\n\nTags: database:2.0.0, development:1.0.0, latest:2.0.0, pro:2.0.0, query:2.0.0, schema:2.0.0, sql:2.0.0\n\nVersion history:\n\nv2.0.0 | 2026-05-29T23:31:26.027Z | auto\n\nVersion 2.0.0 of laosi-database-helper introduces premium status and metadata changes.\n\n- Added `hub.json` file for enhanced configuration support.\n- Updated `SKILL.md` with `badge: premium` and new version number.\n- Minor description and heading text adjustments in SKILL.md.\n- No code or feature changes in functionality.\n\nv1.0.0 | 2026-05-29T01:48:27.244Z | auto\n\nInitial release of Database Helper.\n\n- SQL query builder supporting SELECT/INSERT/UPDATE/DELETE operations\n- Schema management for table creation and modification\n- Data import/export between CSV and SQL databases\n- Supports SQLite, with templates for MySQL and PostgreSQL compatibility\n- Connection pool management\n- Automatic ORM (Object Relational Mapping) template generation\n- Python implementation with usage examples included\n\nArchive index:\n\nArchive v2.0.0: 4 files, 5225 bytes\n\nFiles: hub.json (581b), skill-card.md (2260b), SKILL.md (8525b), _meta.json (140b)\n\nFile v2.0.0:SKILL.md\n\n---\nbadge: premium\nname: database-helper\nversion: 2.0.0\ndescription: 数据库助�?- SQL查询构建�?Schema管理/数据导入导出，支持SQLite/MySQL/PostgreSQL，含ORM模板\ntags: [database, sql, query, schema, development, data]\nauthor: laosi\nsource: original\n---\n\n# Database Helper - 数据库助�?\n> 激活词: 数据�?/ SQL / database / 查询\n\n## 功能\n\n- SQL查询构建器（SELECT/INSERT/UPDATE/DELETE�?- Schema管理（创�?修改表）\n- 数据导入/导出（CSV↔SQL�?- 连接池管�?- ORM模板生成\n\n## Python 实现\n\n```python\nimport os, json, sqlite3\nfrom datetime import datetime\nfrom typing import List, Dict, Optional, Any\n\nclass SQLBuilder:\n    \"\"\"SQL查询构建�?\"\"\n    \n    def __init__(self, table: str = \"\"):\n        self.table = table\n        self._query = \"\"\n        self._params = []\n    \n    def select(self, *columns) -> 'SQLBuilder':\n        cols = \", \".join(columns) if columns else \"*\"\n        self._query = f\"SELECT {cols} FROM {self.table}\"\n        return self\n    \n    def where(self, condition: str, *params) -> 'SQLBuilder':\n        self._query += f\" WHERE {condition}\"\n        self._params.extend(params)\n        return self\n    \n    def order_by(self, column: str, desc: bool = False) -> 'SQLBuilder':\n        direction = \"DESC\" if desc else \"ASC\"\n        self._query += f\" ORDER BY {column} {direction}\"\n        return self\n    \n    def limit(self, n: int) -> 'SQLBuilder':\n        self._query += f\" LIMIT {n}\"\n        return self\n    \n    def join(self, table: str, on: str) -> 'SQLBuilder':\n        self._query += f\" JOIN {table} ON {on}\"\n        return self\n    \n    def insert(self, data: dict) -> 'SQLBuilder':\n        cols = \", \".join(data.keys())\n        placeholders = \", \".join([\"?\"] * len(data))\n        self._query = f\"INSERT INTO {self.table} ({cols}) VALUES ({placeholders})\"\n        self._params = list(data.values())\n        return self\n    \n    def update(self, data: dict) -> 'SQLBuilder':\n        set_clause = \", \".join(f\"{k} = ?\" for k in data.keys())\n        self._query = f\"UPDATE {self.table} SET {set_clause}\"\n        self._params = list(data.values())\n        return self\n    \n    def delete(self) -> 'SQLBuilder':\n        self._query = f\"DELETE FROM {self.table}\"\n        return self\n    \n    def build(self) -> tuple:\n        return self._query, self._params\n\nclass DatabaseHelper:\n    def __init__(self, db_path: str = None):\n        self.db_path = db_path or \":memory:\"\n        self.conn: Optional[sqlite3.Connection] = None\n    \n    def connect(self):\n        self.conn = sqlite3.connect(self.db_path)\n        self.conn.row_factory = sqlite3.Row\n    \n    def close(self):\n        if self.conn:\n            self.conn.close()\n    \n    def execute(self, query: str, params: tuple = ()) -> List[dict]:\n        \"\"\"执行查询并返回结�?\"\"\n        if not self.conn:\n            self.connect()\n        cursor = self.conn.execute(query, params)\n        if query.strip().upper().startswith(\"SELECT\"):\n            return [dict(row) for row in cursor.fetchall()]\n        else:\n            self.conn.commit()\n            return [{\"affected\": cursor.rowcount}]\n    \n    def create_table(self, name: str, columns: Dict[str, str],\n                     primary_key: str = \"id\") -> str:\n        \"\"\"创建�?\"\"\n        cols = [f\"{primary_key} INTEGER PRIMARY KEY AUTOINCREMENT\"]\n        for col_name, col_type in columns.items():\n            cols.append(f\"{col_name} {col_type}\")\n        query = f\"CREATE TABLE IF NOT EXISTS {name} ({', '.join(cols)})\"\n        self.execute(query)\n        return query\n    \n    def schema_info(self) -> Dict:\n        \"\"\"获取数据库schema信息\"\"\"\n        if not self.conn:\n            self.connect()\n        \n        tables = self.execute(\n            \"SELECT name FROM sqlite_master WHERE type='table' AND name NOT LIKE 'sqlite_%'\"\n        )\n        \n        schema = {}\n        for table in tables:\n            table_name = table[\"name\"]\n            columns = self.execute(f\"PRAGMA table_info({table_name})\")\n            count = self.execute(f\"SELECT COUNT(*) as cnt FROM {table_name}\")\n            schema[table_name] = {\n                \"columns\": columns,\n                \"row_count\": count[0][\"cnt\"] if count else 0,\n            }\n        \n        return {\"tables\": len(schema), \"details\": schema}\n    \n    def import_csv(self, csv_path: str, table_name: str) -> dict:\n        \"\"\"从CSV导入数据\"\"\"\n        import csv\n        with open(csv_path, newline=\"\", encoding=\"utf-8\") as f:\n            reader = csv.DictReader(f)\n            rows = list(reader)\n        \n        if not rows:\n            return {\"error\": \"No data in CSV\"}\n        \n        columns = list(rows[0].keys())\n        placeholders = \", \".join([\"?\"] * len(columns))\n        cols = \", \".join(columns)\n        \n        query = f\"INSERT INTO {table_name} ({cols}) VALUES ({placeholders})\"\n        for row in rows:\n            self.execute(query, tuple(row.values()))\n        \n        return {\"imported\": len(rows), \"table\": table_name}\n    \n    def export_csv(self, table_name: str, output_path: str) -> dict:\n        \"\"\"导出表到CSV\"\"\"\n        import csv\n        rows = self.execute(f\"SELECT * FROM {table_name}\")\n        if not rows:\n            return {\"error\": \"No data\"}\n        \n        columns = list(rows[0].keys())\n        with open(output_path, \"w\", newline=\"\", encoding=\"utf-8\") as f:\n            writer = csv.DictWriter(f, fieldnames=columns)\n            writer.writeheader()\n            writer.writerows(rows)\n        \n        return {\"exported\": len(rows), \"file\": output_path}\n    \n    def orm_template(self, table_name: str, columns: Dict[str, str]) -> str:\n        \"\"\"生成ORM模型模板\"\"\"\n        fields = []\n        for col, dtype in columns.items():\n            py_type = \"str\" if \"CHAR\" in dtype.upper() or \"TEXT\" in dtype.upper() else \"int\" if \"INT\" in dtype.upper() else \"float\"\n            fields.append(f\"    {col}: {py_type}\")\n        \n        return f\"\"\"\nfrom dataclasses import dataclass\nfrom typing import Optional\n\n@dataclass\nclass {table_name.title()}:\n{chr(10).join(fields)}\n\n    @classmethod\n    def from_row(cls, row: dict) -> '{table_name.title()}':\n        return cls(**{{k: v for k, v in row.items() if k in cls.__dataclass_fields__}})\n\n    def to_dict(self) -> dict:\n        import dataclasses\n        return dataclasses.asdict(self)\n\"\"\"\n\n# 使用示例\ndb = DatabaseHelper(\":memory:\")\ndb.connect()\n\n# 创建�?db.create_table(\"users\", {\n    \"name\": \"VARCHAR(100) NOT NULL\",\n    \"email\": \"VARCHAR(200) UNIQUE\",\n    \"age\": \"INTEGER\",\n    \"city\": \"VARCHAR(100)\"\n})\n\n# 插入数据\nusers = [\n    {\"name\": \"Alice\", \"email\": \"alice@example.com\", \"age\": 30, \"city\": \"Beijing\"},\n    {\"name\": \"Bob\", \"email\": \"bob@example.com\", \"age\": 25, \"city\": \"Shanghai\"},\n    {\"name\": \"Charlie\", \"email\": \"charlie@example.com\", \"age\": 35, \"city\": \"Beijing\"},\n]\nfor u in users:\n    db.execute(\"INSERT INTO users (name, email, age, city) VALUES (?, ?, ?, ?)\",\n               (u[\"name\"], u[\"email\"], u[\"age\"], u[\"city\"]))\n\n# SQL构建�?query, params = (\n    SQLBuilder(\"users\")\n    .select(\"name\", \"age\", \"city\")\n    .where(\"age > ?\", 28)\n    .order_by(\"age\", desc=True)\n    .limit(10)\n    .build()\n)\nprint(f\"SQL: {query}\")\nprint(f\"Params: {params}\")\n\nresults = db.execute(query, params)\nprint(f\"\\nResults ({len(results)} rows):\")\nfor r in results:\n    print(f\"  {r['name']}: age={r['age']}, city={r['city']}\")\n\n# Schema信息\nschema = db.schema_info()\nprint(f\"\\nSchema: {schema['tables']} tables\")\nfor table, info in schema[\"details\"].items():\n    print(f\"  {table}: {info['row_count']} rows, {len(info['columns'])} columns\")\n\n# ORM模板\norm = db.orm_template(\"users\", {\"name\": \"VARCHAR(100)\", \"email\": \"VARCHAR(200)\", \"age\": \"INTEGER\"})\nprint(f\"\\nORM Template:\")\nprint(orm)\n\ndb.close()\n```\n\n## SQL速查\n\n```sql\n-- 基础查询\nSELECT * FROM users WHERE age > 30 ORDER BY name LIMIT 10;\n\n-- 聚合\nSELECT city, COUNT(*) as cnt, AVG(age) as avg_age\nFROM users GROUP BY city HAVING cnt > 1;\n\n-- 联表\nSELECT u.name, o.amount\nFROM users u\nJOIN orders o ON u.id = o.user_id\nWHERE o.status = 'completed';\n\n-- 窗口函数\nSELECT name, age,\n       RANK() OVER (ORDER BY age DESC) as rank\nFROM users;\n```\n\n## 使用场景\n\n1. **数据探索**: 快速查询数据库了解数据结构\n2. **ETL管道**: CSV导入/导出到SQL\n3. **原型开�?*: 快速创建表结构和示例数�?4. **数据分析**: 复杂SQL查询和聚�?\n## 依赖\n\n- Python 3.8+\n- sqlite3（标准库�?- 可选：mysql-connector-python / psycopg2\n\nFile v2.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn71pk44ca87scz3pstt90r66n80xhaa\",\n  \"slug\": \"laosi-database-helper\",\n  \"version\": \"2.0.0\",\n  \"publishedAt\": 1780097486027\n}\n\nFile v2.0.0:skill-card.md\n\n## Description:\n\nDatabase Helper Pro provides SQL query-building guidance, SQLite helper code, schema inspection, CSV import/export examples, and ORM template generation for database workflows.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[534422530](https://clawhub.ai/user/534422530)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and data practitioners use this skill to prototype local database workflows, compose SQL snippets, inspect schemas, and generate starter code for CSV import/export and ORM models.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Database write, delete, and schema-change operations could alter or remove production data.\n\nMitigation: Review generated operations before execution, require explicit confirmation for writes and deletes, and test against backups or disposable databases first.\n\nRisk: Unsafe query-building patterns can expose databases to malformed SQL or injection when identifiers or raw conditions come from untrusted input.\n\nMitigation: Validate table and column identifiers, parameterize values, and restrict raw SQL fragments to trusted callers.\n\nRisk: The provided implementation is SQLite-focused even though the skill text mentions MySQL and PostgreSQL support.\n\nMitigation: Confirm database-driver support and dialect differences before using generated code with MySQL or PostgreSQL.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/534422530/skills/laosi-database-helper)\n- [Publisher profile](https://clawhub.ai/user/534422530)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Code, Configuration, Guidance]\n\n**Output Format:** [Markdown with Python and SQL code blocks]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include SQL snippets, SQLite helper code, schema summaries, CSV import/export examples, and ORM templates.]\n\n## Skill Version(s):\n\n2.0.0 (source: evidence release, SKILL.md frontmatter, hub.json)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment.\n\nFile v2.0.0:hub.json\n\n{\r\n    \"description\":  \"Premium version with full implementation, examples, and enterprise support\",\r\n    \"minOpenClawVersion\":  \"1.2.0\",\r\n    \"version\":  \"2.0.0\",\r\n    \"tags\":  [\r\n                 \"database\",\r\n                 \"sql\",\r\n                 \"query\",\r\n                 \"schema\",\r\n                 \"pro\"\r\n             ],\r\n    \"author\":  \"laosi\",\r\n    \"name\":  \"database-helper\",\r\n    \"pricing\":  {\r\n                    \"price\":  2900,\r\n                    \"model\":  \"one-time\"\r\n                },\r\n    \"license\":  \"MIT\",\r\n    \"displayName\":  \"Database Helper Pro\"\r\n}\n\nArchive v1.0.0: 3 files, 4805 bytes\n\nFiles: skill-card.md (2184b), SKILL.md (8527b), _meta.json (140b)\n\nFile v1.0.0:SKILL.md\n\n---\nname: database-helper\nversion: 1.0.0\ndescription: 数据库助手 - SQL查询构建器/Schema管理/数据导入导出，支持SQLite/MySQL/PostgreSQL，含ORM模板\ntags: [database, sql, query, schema, development, data]\nauthor: laosi\nsource: original\n---\n\n# Database Helper - 数据库助手\n\n> 激活词: 数据库 / SQL / database / 查询\n\n## 功能\n\n- SQL查询构建器（SELECT/INSERT/UPDATE/DELETE）\n- Schema管理（创建/修改表）\n- 数据导入/导出（CSV↔SQL）\n- 连接池管理\n- ORM模板生成\n\n## Python 实现\n\n```python\nimport os, json, sqlite3\nfrom datetime import datetime\nfrom typing import List, Dict, Optional, Any\n\nclass SQLBuilder:\n    \"\"\"SQL查询构建器\"\"\"\n    \n    def __init__(self, table: str = \"\"):\n        self.table = table\n        self._query = \"\"\n        self._params = []\n    \n    def select(self, *columns) -> 'SQLBuilder':\n        cols = \", \".join(columns) if columns else \"*\"\n        self._query = f\"SELECT {cols} FROM {self.table}\"\n        return self\n    \n    def where(self, condition: str, *params) -> 'SQLBuilder':\n        self._query += f\" WHERE {condition}\"\n        self._params.extend(params)\n        return self\n    \n    def order_by(self, column: str, desc: bool = False) -> 'SQLBuilder':\n        direction = \"DESC\" if desc else \"ASC\"\n        self._query += f\" ORDER BY {column} {direction}\"\n        return self\n    \n    def limit(self, n: int) -> 'SQLBuilder':\n        self._query += f\" LIMIT {n}\"\n        return self\n    \n    def join(self, table: str, on: str) -> 'SQLBuilder':\n        self._query += f\" JOIN {table} ON {on}\"\n        return self\n    \n    def insert(self, data: dict) -> 'SQLBuilder':\n        cols = \", \".join(data.keys())\n        placeholders = \", \".join([\"?\"] * len(data))\n        self._query = f\"INSERT INTO {self.table} ({cols}) VALUES ({placeholders})\"\n        self._params = list(data.values())\n        return self\n    \n    def update(self, data: dict) -> 'SQLBuilder':\n        set_clause = \", \".join(f\"{k} = ?\" for k in data.keys())\n        self._query = f\"UPDATE {self.table} SET {set_clause}\"\n        self._params = list(data.values())\n        return self\n    \n    def delete(self) -> 'SQLBuilder':\n        self._query = f\"DELETE FROM {self.table}\"\n        return self\n    \n    def build(self) -> tuple:\n        return self._query, self._params\n\nclass DatabaseHelper:\n    def __init__(self, db_path: str = None):\n        self.db_path = db_path or \":memory:\"\n        self.conn: Optional[sqlite3.Connection] = None\n    \n    def connect(self):\n        self.conn = sqlite3.connect(self.db_path)\n        self.conn.row_factory = sqlite3.Row\n    \n    def close(self):\n        if self.conn:\n            self.conn.close()\n    \n    def execute(self, query: str, params: tuple = ()) -> List[dict]:\n        \"\"\"执行查询并返回结果\"\"\"\n        if not self.conn:\n            self.connect()\n        cursor = self.conn.execute(query, params)\n        if query.strip().upper().startswith(\"SELECT\"):\n            return [dict(row) for row in cursor.fetchall()]\n        else:\n            self.conn.commit()\n            return [{\"affected\": cursor.rowcount}]\n    \n    def create_table(self, name: str, columns: Dict[str, str],\n                     primary_key: str = \"id\") -> str:\n        \"\"\"创建表\"\"\"\n        cols = [f\"{primary_key} INTEGER PRIMARY KEY AUTOINCREMENT\"]\n        for col_name, col_type in columns.items():\n            cols.append(f\"{col_name} {col_type}\")\n        query = f\"CREATE TABLE IF NOT EXISTS {name} ({', '.join(cols)})\"\n        self.execute(query)\n        return query\n    \n    def schema_info(self) -> Dict:\n        \"\"\"获取数据库schema信息\"\"\"\n        if not self.conn:\n            self.connect()\n        \n        tables = self.execute(\n            \"SELECT name FROM sqlite_master WHERE type='table' AND name NOT LIKE 'sqlite_%'\"\n        )\n        \n        schema = {}\n        for table in tables:\n            table_name = table[\"name\"]\n            columns = self.execute(f\"PRAGMA table_info({table_name})\")\n            count = self.execute(f\"SELECT COUNT(*) as cnt FROM {table_name}\")\n            schema[table_name] = {\n                \"columns\": columns,\n                \"row_count\": count[0][\"cnt\"] if count else 0,\n            }\n        \n        return {\"tables\": len(schema), \"details\": schema}\n    \n    def import_csv(self, csv_path: str, table_name: str) -> dict:\n        \"\"\"从CSV导入数据\"\"\"\n        import csv\n        with open(csv_path, newline=\"\", encoding=\"utf-8\") as f:\n            reader = csv.DictReader(f)\n            rows = list(reader)\n        \n        if not rows:\n            return {\"error\": \"No data in CSV\"}\n        \n        columns = list(rows[0].keys())\n        placeholders = \", \".join([\"?\"] * len(columns))\n        cols = \", \".join(columns)\n        \n        query = f\"INSERT INTO {table_name} ({cols}) VALUES ({placeholders})\"\n        for row in rows:\n            self.execute(query, tuple(row.values()))\n        \n        return {\"imported\": len(rows), \"table\": table_name}\n    \n    def export_csv(self, table_name: str, output_path: str) -> dict:\n        \"\"\"导出表到CSV\"\"\"\n        import csv\n        rows = self.execute(f\"SELECT * FROM {table_name}\")\n        if not rows:\n            return {\"error\": \"No data\"}\n        \n        columns = list(rows[0].keys())\n        with open(output_path, \"w\", newline=\"\", encoding=\"utf-8\") as f:\n            writer = csv.DictWriter(f, fieldnames=columns)\n            writer.writeheader()\n            writer.writerows(rows)\n        \n        return {\"exported\": len(rows), \"file\": output_path}\n    \n    def orm_template(self, table_name: str, columns: Dict[str, str]) -> str:\n        \"\"\"生成ORM模型模板\"\"\"\n        fields = []\n        for col, dtype in columns.items():\n            py_type = \"str\" if \"CHAR\" in dtype.upper() or \"TEXT\" in dtype.upper() else \"int\" if \"INT\" in dtype.upper() else \"float\"\n            fields.append(f\"    {col}: {py_type}\")\n        \n        return f\"\"\"\nfrom dataclasses import dataclass\nfrom typing import Optional\n\n@dataclass\nclass {table_name.title()}:\n{chr(10).join(fields)}\n\n    @classmethod\n    def from_row(cls, row: dict) -> '{table_name.title()}':\n        return cls(**{{k: v for k, v in row.items() if k in cls.__dataclass_fields__}})\n\n    def to_dict(self) -> dict:\n        import dataclasses\n        return dataclasses.asdict(self)\n\"\"\"\n\n# 使用示例\ndb = DatabaseHelper(\":memory:\")\ndb.connect()\n\n# 创建表\ndb.create_table(\"users\", {\n    \"name\": \"VARCHAR(100) NOT NULL\",\n    \"email\": \"VARCHAR(200) UNIQUE\",\n    \"age\": \"INTEGER\",\n    \"city\": \"VARCHAR(100)\"\n})\n\n# 插入数据\nusers = [\n    {\"name\": \"Alice\", \"email\": \"alice@example.com\", \"age\": 30, \"city\": \"Beijing\"},\n    {\"name\": \"Bob\", \"email\": \"bob@example.com\", \"age\": 25, \"city\": \"Shanghai\"},\n    {\"name\": \"Charlie\", \"email\": \"charlie@example.com\", \"age\": 35, \"city\": \"Beijing\"},\n]\nfor u in users:\n    db.execute(\"INSERT INTO users (name, email, age, city) VALUES (?, ?, ?, ?)\",\n               (u[\"name\"], u[\"email\"], u[\"age\"], u[\"city\"]))\n\n# SQL构建器\nquery, params = (\n    SQLBuilder(\"users\")\n    .select(\"name\", \"age\", \"city\")\n    .where(\"age > ?\", 28)\n    .order_by(\"age\", desc=True)\n    .limit(10)\n    .build()\n)\nprint(f\"SQL: {query}\")\nprint(f\"Params: {params}\")\n\nresults = db.execute(query, params)\nprint(f\"\\nResults ({len(results)} rows):\")\nfor r in results:\n    print(f\"  {r['name']}: age={r['age']}, city={r['city']}\")\n\n# Schema信息\nschema = db.schema_info()\nprint(f\"\\nSchema: {schema['tables']} tables\")\nfor table, info in schema[\"details\"].items():\n    print(f\"  {table}: {info['row_count']} rows, {len(info['columns'])} columns\")\n\n# ORM模板\norm = db.orm_template(\"users\", {\"name\": \"VARCHAR(100)\", \"email\": \"VARCHAR(200)\", \"age\": \"INTEGER\"})\nprint(f\"\\nORM Template:\")\nprint(orm)\n\ndb.close()\n```\n\n## SQL速查\n\n```sql\n-- 基础查询\nSELECT * FROM users WHERE age > 30 ORDER BY name LIMIT 10;\n\n-- 聚合\nSELECT city, COUNT(*) as cnt, AVG(age) as avg_age\nFROM users GROUP BY city HAVING cnt > 1;\n\n-- 联表\nSELECT u.name, o.amount\nFROM users u\nJOIN orders o ON u.id = o.user_id\nWHERE o.status = 'completed';\n\n-- 窗口函数\nSELECT name, age,\n       RANK() OVER (ORDER BY age DESC) as rank\nFROM users;\n```\n\n## 使用场景\n\n1. **数据探索**: 快速查询数据库了解数据结构\n2. **ETL管道**: CSV导入/导出到SQL\n3. **原型开发**: 快速创建表结构和示例数据\n4. **数据分析**: 复杂SQL查询和聚合\n\n## 依赖\n\n- Python 3.8+\n- sqlite3（标准库）\n- 可选：mysql-connector-python / psycopg2\n\nFile v1.0.0:_meta.json\n\n{\n  \"ownerId\": \"kn71pk44ca87scz3pstt90r66n80xhaa\",\n  \"slug\": \"laosi-database-helper\",\n  \"version\": \"1.0.0\",\n  \"publishedAt\": 1780019307244\n}\n\nFile v1.0.0:skill-card.md\n\n## Description: <br>\nDatabase Helper Pro helps agents produce SQL query builder code, schema-management guidance, CSV import/export workflows, connection-pool patterns, and ORM templates for SQLite-oriented database work with MySQL and PostgreSQL compatibility notes. <br>\n\nThis skill is ready for commercial/non-commercial use. <br>\n\n## Publisher: <br>\n[534422530](https://clawhub.ai/user/534422530) <br>\n\n### License/Terms of Use: <br>\nMIT-0 <br>\n\n\n## Use Case: <br>\nDevelopers and data practitioners use this skill to ask an agent for database helper code, SQL examples, schema creation and inspection patterns, CSV import/export flows, and ORM model templates during prototyping, ETL, and data analysis tasks. <br>\n\n### Deployment Geography for Use: <br>\nGlobal <br>\n\n## Known Risks and Mitigations: <br>\nRisk: Generated write, delete, import, and export operations can change database contents or expose table data. <br>\nMitigation: Review generated queries before execution, work from backups for real databases, and handle CSV exports as potentially sensitive local files. <br>\nRisk: SQL helper code and examples may be adapted to production data stores without sufficient validation. <br>\nMitigation: Validate SQL behavior in a test database first and apply normal database access controls, transaction handling, and review before production use. <br>\n\n\n## Reference(s): <br>\n- [ClawHub skill page](https://clawhub.ai/534422530/laosi-database-helper) <br>\n\n\n## Skill Output: <br>\n**Output Type(s):** [text, markdown, code, shell commands, configuration, guidance] <br>\n**Output Format:** [Markdown with Python and SQL code blocks] <br>\n**Output Parameters:** [1D] <br>\n**Other Properties Related to Output:** [May include runnable SQLite examples, SQL snippets, dependency notes, and database-operation guidance.] <br>\n\n## Skill Version(s): <br>\n1.0.0 (source: frontmatter and release evidence) <br>\n\n## Ethical Considerations: <br>\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment. <br>","readmeExcerpt":"Skill: Database Helper Pro Owner: 534422530 Summary: 数据库助�?- SQL查询构建�?Schema管理/数据导入导出，支持SQLite/MySQL/PostgreSQL，含ORM模板 Tags: database:2.0.0, development:1.0.0, latest:2.0.0, pro:2.0.0, query:2.0.0, schema:2.0.0, sql:2.0.0 Version history: v2.0.0 | 2026-05-29T23:31:26.027Z | auto Version 2.0.0 of laosi-database-helper introduces premium status and metadata changes. - Added hub.json file for enhanced configuration supp","codeSnippets":[],"executableExamples":[{"language":"python","snippet":"import os, json, sqlite3\nfrom datetime import datetime\nfrom typing import List, Dict, Optional, Any\n\nclass SQLBuilder:\n    \"\"\"SQL查询构建�?\"\"\n    \n    def __init__(self, table: str = \"\"):\n        self.table = table\n        self._query = \"\"\n        self._params = []\n    \n    def select(self, *columns) -> 'SQLBuilder':\n        cols = \", \".join(columns) if columns else \"*\"\n        self._query = f\"SELECT {cols} FROM {self.table}\"\n        return self\n    \n    def where(self, condition: str, *params) -> 'SQLBuilder':\n        self._query += f\" WHERE {condition}\"\n        self._params.extend(params)\n        return self\n    \n    def order_by(self, column: str, desc: bool = False) -> 'SQLBuilder':\n        direction = \"DESC\" if desc else \"ASC\"\n        self._query += f\" ORDER BY {column} {direction}\"\n        return self\n    \n    def limit(self, n: int) -> 'SQLBuilder':\n        self._query += f\" LIMIT {n}\"\n        return self\n    \n    def join(self, table: str, on: str) -> 'SQLBuilder':\n        self._query += f\" JOIN {table} ON {on}\"\n        return self\n    \n    def insert(self, data: dict) -> 'SQLBuilder':\n        cols = \", \".join(data.keys())\n        placeholders = \", \".join([\"?\"] * len(data))\n        self._query = f\"INSERT INTO {self.table} ({cols}) VALUES ({placeholders})\"\n        self._params = list(data.values())\n        return self\n    \n    def update(self, data: dict) -> 'SQLBuilder':\n        set_clause = \", \".join(f\"{k} = ?\" for k in data.keys())\n        self._query = f\"UPDATE {self.table} SET {set_clause}\"\n        self._params = list(data.values())\n        return self\n    \n    def delete(self) -> 'SQLBuilder':\n        self._query = f\"DELETE FROM {self.table}\"\n        return self\n    \n    def build(self) -> tuple:\n        return self._query, self._params\n\nclass DatabaseHelper:\n    def __init__(self, db_path: str = None):\n        self.db_path = db_path or \":memory:\"\n        self.conn: Optional[sqlite3.Connection] = None\n    \n    def connect(self):\n        self.conn = sqlite3."},{"language":"sql","snippet":"-- 基础查询\nSELECT * FROM users WHERE age > 30 ORDER BY name LIMIT 10;\n\n-- 聚合\nSELECT city, COUNT(*) as cnt, AVG(age) as avg_age\nFROM users GROUP BY city HAVING cnt > 1;\n\n-- 联表\nSELECT u.name, o.amount\nFROM users u\nJOIN orders o ON u.id = o.user_id\nWHERE o.status = 'completed';\n\n-- 窗口函数\nSELECT name, age,\n       RANK() OVER (ORDER BY age DESC) as rank\nFROM users;"},{"language":"python","snippet":"import os, json, sqlite3\nfrom datetime import datetime\nfrom typing import List, Dict, Optional, Any\n\nclass SQLBuilder:\n    \"\"\"SQL查询构建器\"\"\"\n    \n    def __init__(self, table: str = \"\"):\n        self.table = table\n        self._query = \"\"\n        self._params = []\n    \n    def select(self, *columns) -> 'SQLBuilder':\n        cols = \", \".join(columns) if columns else \"*\"\n        self._query = f\"SELECT {cols} FROM {self.table}\"\n        return self\n    \n    def where(self, condition: str, *params) -> 'SQLBuilder':\n        self._query += f\" WHERE {condition}\"\n        self._params.extend(params)\n        return self\n    \n    def order_by(self, column: str, desc: bool = False) -> 'SQLBuilder':\n        direction = \"DESC\" if desc else \"ASC\"\n        self._query += f\" ORDER BY {column} {direction}\"\n        return self\n    \n    def limit(self, n: int) -> 'SQLBuilder':\n        self._query += f\" LIMIT {n}\"\n        return self\n    \n    def join(self, table: str, on: str) -> 'SQLBuilder':\n        self._query += f\" JOIN {table} ON {on}\"\n        return self\n    \n    def insert(self, data: dict) -> 'SQLBuilder':\n        cols = \", \".join(data.keys())\n        placeholders = \", \".join([\"?\"] * len(data))\n        self._query = f\"INSERT INTO {self.table} ({cols}) VALUES ({placeholders})\"\n        self._params = list(data.values())\n        return self\n    \n    def update(self, data: dict) -> 'SQLBuilder':\n        set_clause = \", \".join(f\"{k} = ?\" for k in data.keys())\n        self._query = f\"UPDATE {self.table} SET {set_clause}\"\n        self._params = list(data.values())\n        return self\n    \n    def delete(self) -> 'SQLBuilder':\n        self._query = f\"DELETE FROM {self.table}\"\n        return self\n    \n    def build(self) -> tuple:\n        return self._query, self._params\n\nclass DatabaseHelper:\n    def __init__(self, db_path: str = None):\n        self.db_path = db_path or \":memory:\"\n        self.conn: Optional[sqlite3.Connection] = None\n    \n    def connect(self):\n        self.conn = sqlite3."},{"language":"sql","snippet":"-- 基础查询\nSELECT * FROM users WHERE age > 30 ORDER BY name LIMIT 10;\n\n-- 聚合\nSELECT city, COUNT(*) as cnt, AVG(age) as avg_age\nFROM users GROUP BY city HAVING cnt > 1;\n\n-- 联表\nSELECT u.name, o.amount\nFROM users u\nJOIN orders o ON u.id = o.user_id\nWHERE o.status = 'completed';\n\n-- 窗口函数\nSELECT name, age,\n       RANK() OVER (ORDER BY age DESC) as rank\nFROM users;"}],"parameters":null,"dependencies":[],"permissions":[],"extractedFiles":[{"path":"SKILL.md","content":"---\nbadge: premium\nname: database-helper\nversion: 2.0.0\ndescription: 数据库助�?- SQL查询构建�?Schema管理/数据导入导出，支持SQLite/MySQL/PostgreSQL，含ORM模板\ntags: [database, sql, query, schema, development, data]\nauthor: laosi\nsource: original\n---\n\n# Database Helper - 数据库助�?\n> 激活词: 数据�?/ SQL / database / 查询\n\n## 功能\n\n- SQL查询构建器（SELECT/INSERT/UPDATE/DELETE�?- Schema管理（创�?修改表）\n- 数据导入/导出（CSV↔SQL�?- 连接池管�?- ORM模板生成\n\n## Python 实现\n\n```python\nimport os, json, sqlite3\nfrom datetime import datetime\nfrom typing import List, Dict, Optional, Any\n\nclass SQLBuilder:\n    \"\"\"SQL查询构建�?\"\"\n    \n    def __init__(self, table: str = \"\"):\n        self.table = table\n        self._query = \"\"\n        self._params = []\n    \n    def select(self, *columns) -> 'SQLBuilder':\n        cols = \", \".join(columns) if columns else \"*\"\n        self._query = f\"SELECT {cols} FROM {self.table}\"\n        return self\n    \n    def where(self, condition: str, *params) -> 'SQLBuilder':\n        self._query += f\" WHERE {condition}\"\n        self._params.extend(params)\n        return self\n    \n    def order_by(self, column: str, desc: bool = False) -> 'SQLBuilder':\n        direction = \"DESC\" if desc else \"ASC\"\n        self._query += f\" ORDER BY {column} {direction}\"\n        return self\n    \n    def limit(self, n: int) -> 'SQLBuilder':\n        self._query += f\" LIMIT {n}\"\n        return self\n    \n    def join(self, table: str, on: str) -> 'SQLBuilder':\n        self._query += f\" JOIN {table} ON {on}\"\n        return self\n    \n    def insert(self, data: dict) -> 'SQLBuilder':\n        cols = \", \".join(data.keys())\n        placeholders = \", \".join([\"?\"] * len(data))\n        self._query = f\"INSERT INTO {self.table} ({cols}) VALUES ({placeholders})\"\n        self._params = list(data.values())\n        return self\n    \n    def update(self, data: dict) -> 'SQLBuilder':\n        set_clause = \", \".join(f\"{k} = ?\" for k in data.keys())\n        self._query = f\"UPDATE {self.table} SET {set_clause}\"\n        self._params = list(data.values())\n        return self\n    \n    def delete(self) -> 'SQLBuilder':\n        self._query = f\"DELETE FROM {self.table}\"\n        return self\n    \n    def build(self) -> tuple:\n        return self._query, self._params\n\nclass DatabaseHelper:\n    def __init__(self, db_path: str = None):\n        self.db_path = db_path or \":memory:\"\n        self.conn: Optional[sqlite3.Connection] = None\n    \n    def connect(self):\n        self.conn = sqlite3.connect(self.db_path)\n        self.conn.row_factory = sqlite3.Row\n    \n    def close(self):\n        if self.conn:\n            self.conn.close()\n    \n    def execute(self, query: str, params: tuple = ()) -> List[dict]:\n        \"\"\"执行查询并返回结�?\"\"\n        if not self.conn:\n            self.connect()\n        cursor = self.conn.execute(query, params)\n        if query.strip().upper().startswith(\"SELECT\"):\n            return [dict(row) for row in cursor.fetchall()]\n        else:\n            self.conn.commit()\n            return [{\"affected\": cursor.rowcount}]\n    \n    def create_table(se"},{"path":"_meta.json","content":"{\n  \"ownerId\": \"kn71pk44ca87scz3pstt90r66n80xhaa\",\n  \"slug\": \"laosi-database-helper\",\n  \"version\": \"2.0.0\",\n  \"publishedAt\": 1780097486027\n}"},{"path":"skill-card.md","content":"## Description:\n\nDatabase Helper Pro provides SQL query-building guidance, SQLite helper code, schema inspection, CSV import/export examples, and ORM template generation for database workflows.\n\nThis skill is ready for commercial/non-commercial use.\n\n## Publisher:\n\n[534422530](https://clawhub.ai/user/534422530)\n\n### License/Terms of Use:\n\nMIT-0\n\n## Use Case:\n\nDevelopers and data practitioners use this skill to prototype local database workflows, compose SQL snippets, inspect schemas, and generate starter code for CSV import/export and ORM models.\n\n### Deployment Geography for Use:\n\nGlobal\n\n## Known Risks and Mitigations:\n\nRisk: Database write, delete, and schema-change operations could alter or remove production data.\n\nMitigation: Review generated operations before execution, require explicit confirmation for writes and deletes, and test against backups or disposable databases first.\n\nRisk: Unsafe query-building patterns can expose databases to malformed SQL or injection when identifiers or raw conditions come from untrusted input.\n\nMitigation: Validate table and column identifiers, parameterize values, and restrict raw SQL fragments to trusted callers.\n\nRisk: The provided implementation is SQLite-focused even though the skill text mentions MySQL and PostgreSQL support.\n\nMitigation: Confirm database-driver support and dialect differences before using generated code with MySQL or PostgreSQL.\n\n## Reference(s):\n\n- [ClawHub skill page](https://clawhub.ai/534422530/skills/laosi-database-helper)\n- [Publisher profile](https://clawhub.ai/user/534422530)\n\n## Skill Output:\n\n**Output Type(s):** [Text, Markdown, Code, Configuration, Guidance]\n\n**Output Format:** [Markdown with Python and SQL code blocks]\n\n**Output Parameters:** [1D]\n\n**Other Properties Related to Output:** [May include SQL snippets, SQLite helper code, schema summaries, CSV import/export examples, and ORM templates.]\n\n## Skill Version(s):\n\n2.0.0 (source: evidence release, SKILL.md frontmatter, hub.json)\n\n## Ethical Considerations:\n\nUsers should evaluate whether this skill is appropriate for their environment, review any generated or modified files before relying on them, and apply their organization's safety, security, and compliance requirements before deployment."},{"path":"hub.json","content":"{\r\n    \"description\":  \"Premium version with full implementation, examples, and enterprise support\",\r\n    \"minOpenClawVersion\":  \"1.2.0\",\r\n    \"version\":  \"2.0.0\",\r\n    \"tags\":  [\r\n                 \"database\",\r\n                 \"sql\",\r\n                 \"query\",\r\n                 \"schema\",\r\n                 \"pro\"\r\n             ],\r\n    \"author\":  \"laosi\",\r\n    \"name\":  \"database-helper\",\r\n    \"pricing\":  {\r\n                    \"price\":  2900,\r\n                    \"model\":  \"one-time\"\r\n                },\r\n    \"license\":  \"MIT\",\r\n    \"displayName\":  \"Database Helper Pro\"\r\n}"}],"languages":[],"docsSourceLabel":"CLAWHUB","editorialOverview":"数据库助�?- SQL查询构建�?Schema管理/数据导入导出，支持SQLite/MySQL/PostgreSQL，含ORM模板 Skill: Database Helper Pro Owner: 534422530 Summary: 数据库助�?- SQL查询构建�?Schema管理/数据导入导出，支持SQLite/MySQL/PostgreSQL，含ORM模板 Tags: database:2.0.0, development:1.0.0, latest:2.0.0, pro:2.0.0, query:2.0.0, schema:2.0.0, sql:2.0.0 Version history: v2.0.0 | 2026-05-29T23:31:26.027Z | auto Version 2.0.0 of laosi-database-helper introduces premium status and metadata changes. - Added hub.json file for enhanced configuration supp","editorialQuality":{"score":100,"threshold":65,"status":"ready","wordCount":1121,"uniquenessScore":47,"reasons":[]}},"media":{"evidence":{"source":"no-media","verified":false,"confidence":"low","updatedAt":"2026-10-11T13:07:03.807Z","emptyReason":"No screenshots, media assets, or demo links are available."},"primaryImageUrl":null,"mediaAssetCount":0,"assets":[],"demoUrl":null},"ownerResources":{"evidence":{"source":"unclaimed","verified":false,"confidence":"low","updatedAt":"2026-10-11T13:07:03.807Z","emptyReason":"This page has not been claimed by the agent owner."},"hasCustomPage":false,"customPageUpdatedAt":null,"customLinks":[],"structuredLinks":{"docsUrl":null,"demoUrl":null,"supportUrl":null,"pricingUrl":null,"statusUrl":null},"customPage":null},"relatedAgents":{"evidence":{"source":"protocol-neighbors","verified":false,"confidence":"medium","updatedAt":"2026-10-11T16:02:59.652Z","emptyReason":null},"items":[{"id":"8ebccd8e-3863-4187-8355-c3f14e1f9edf","entityType":"agent","canonicalPath":"/agent/iofficeai-aionui","slug":"iofficeai-aionui","name":"AionUi","description":"Free, local, open-source 24/7 Cowork app and OpenClaw for Gemini CLI, Claude Code, Codex, OpenCode, Qwen Code, Goose CLI, Auggie, and more | 🌟 Star if you like it!","url":"https://github.com/iOfficeAI/AionUi","homepage":"https://www.aionui.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-10-09T19:11:12.944Z","createdAt":"2026-02-25T03:38:16.584Z","downloads":null},{"id":"b917f68a-ebff-438e-84f8-3f4b2494c0bc","entityType":"agent","canonicalPath":"/agent/activepieces-activepieces","slug":"activepieces-activepieces","name":"activepieces","description":"AI Agents & MCPs & AI Workflow Automation • (~400 MCP servers for AI agents) • AI Automation / AI Agent with MCPs • AI Workflows & AI Agents • MCPs for AI Agents","url":"https://github.com/activepieces/activepieces","homepage":"https://www.activepieces.com","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-15T02:22:12.426Z","createdAt":"2026-02-25T03:38:12.412Z","downloads":null},{"id":"5cb26759-3a39-483f-94cf-276a98c13bb8","entityType":"agent","canonicalPath":"/agent/cherryhq-cherry-studio","slug":"cherryhq-cherry-studio","name":"cherry-studio","description":"AI productivity studio with smart chat, autonomous agents, and 300+ assistants. Unified access to frontier LLMs","url":"https://github.com/CherryHQ/cherry-studio","homepage":"https://cherry-ai.com","source":"GITHUB_REPOS","protocols":["MCP","OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-04-11T14:38:40.986Z","createdAt":"2026-02-25T03:38:19.379Z","downloads":null},{"id":"6f6582d0-5d76-4f0f-b81d-86520247950b","entityType":"agent","canonicalPath":"/agent/copilotkit-copilotkit","slug":"copilotkit-copilotkit","name":"CopilotKit","description":"The Frontend for Agents & Generative UI. React + Angular","url":"https://github.com/CopilotKit/CopilotKit","homepage":"https://docs.copilotkit.ai","source":"GITHUB_REPOS","protocols":["OPENCLAW"],"capabilities":[],"safetyScore":100,"overallRank":70,"updatedAt":"2026-03-25T09:50:57.846Z","createdAt":"2026-02-25T03:39:14.617Z","downloads":null}],"links":{"hub":"/agent","source":"/agent/source/clawhub","protocols":[{"label":"OpenClaw","href":"/agent/protocol/openclew"}]}}}