Token导航 LogoToken导航TokenDH.com
研究检索敏感数据clawhub未标认证来源可访问clear审计提醒

shopyoshopyo 命令行

Agent Skill

shopyo 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

6,139

周安装

261

GitHub Stars

公开资料未说明

下载量

2,151
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:shopyo(shopyo 命令行)
来源仓库:https://github.com/abdur-rahmaanj/shopyo
安装命令:
openclaw skills install shopyo
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install shopyo

简介

Shopyo 是模块化 Flask 框架,用于构建可扩展和可维护的 Web 应用程序。

  • 支持隔离模块、事件驱动通信和内置身份验证等功能。
  • 通过 clawhub 安装,需 Python 环境和依赖包管理器配合使用。
  • 使用前应检查 CLI 工具路径配置及数据库连接权限设置。
  • 建议遵循框架约定进行代码组织以提高团队协作效率。

SKILL.md

Shopyo Skill

Shopyo is a modular Flask framework designed for maintainability, extensibility, and real-world scale.

Project Structure

A typical Shopyo project:

/project_root
├── app.py          # Entry point, defines create_app()
├── init.py         # Extension initializer (db, login_manager, etc.)
├── manage.py       # CLI entry point
├── config.py       # Profile-based configuration
└── modules/        # Modular code
    ├── box__default/
    │   ├── auth/
    │   └── settings/
    └── my_custom_module/

CLI Commands

# Environment setup
export SHOPYO_CONFIG_PROFILE=development
export FLASK_ENV=development
export FLASK_APP=app.py

# New project
shopyo new myproject --demo
cd myproject
shopyo initialise

# Create module
shopyo startapp modulename [boxname]

# Create box
shopyo startbox box__name

# Run server
shopyo run
flask run --debug

# Database
shopyo initialise   # Fresh start (creates db, migrations, default users)
shopyo db migrate
shopyo db upgrade
shopyo clean        # Reset local database

# Static files
shopyo collectstatic [module_path]  # Collect static files from modules

# Other
shopyo routes       # Show all routes
shopyo audit        # Find project issues
shopyo rename old_name new_name  # Rename module

Creating a Module

shopyo startapp blog
# or with box
shopyo startapp blog box__ecommerce

Creates:

modules/blog/
├── __init__.py
├── forms.py
├── global.py
├── info.json
├── models.py
├── view.py
├── static/
├── templates/
│   └── blog/
│       ├── blocks/
│       │   └── sidebar.html
│       ├── dashboard.html
│       └── index.html
└── tests/
    ├── test_blog_functional.py
    └── test_blog_models.py

info.json Structure

{
   "author": {"mail": "", "name": "", "website": ""},
   "display_string": "Page",
   "module_name": "page",
   "type": "show",
   "fa-icon": "fa fa-store",
   "url_prefix": "/page",
   "dashboard": "/dashboard"
}

Module View Pattern

from shopyo.api.module import ModuleHelp

mhelp = ModuleHelp(__file__, __name__)
blueprint = mhelp.blueprint

@blueprint.route("/")
def index():
    context = mhelp.context()
    context.update({'message': 'Hello'})
    return mhelp.render('index.html', **context)

Models Pattern

from init import db
from shopyo.api.models import PkModel

class MyModel(PkModel):
    __tablename__ = 'mymodel'
    name = db.Column(db.String(100))

Templates

Extend the base template:

{% extends "shopyo_base/main_base.html" %}
{% block content %}
<h1>Hello</h1>
{% endblock %}

Use yo_render:

from shopyo.api.templates import yo_render

@blueprint.route("/demo")
def demo():
    return yo_render('blog/demo.html', {'key': 'value'})

Shopyo API

Key imports:

from shopyo.api.module import ModuleHelp, get_module, dispatch
from shopyo.api.models import PkModel
from shopyo.api.templates import yo_render
from shopyo.api.database import db
from shopyo.api.enhance import enhance_html

Inter-Module Communication

Use the event system:

from shopyo.api.module import dispatch

# Dispatch event
dispatch("user:registered", {"email": user.email})

# Listen for event
@dispatch("user:registered")
def send_welcome_email(email):
    pass

Testing

pytest
pytest -v
pytest path/to/test.py
pytest --cov=shopyo
tox

Global.py Pattern

available_everywhere = {"x": 1}

configs = {
    "development": {"CONFIG_VAR": "DEVVALUE"},
    "production": {"CONFIG_VAR": "PRODVALUE"},
    "testing": {"CONFIG_VAR": "TESTVALUE"}
}

Default Credentials

After shopyo initialise:

  • URL: http://localhost:5000
  • Login: http://localhost:5000/auth/login
  • Email: admin@domain.com
  • Password: pass

Key Conventions

  • Box folders must start with box__
  • Modules are isolated - do not import between modules directly
  • Use event system (dispatch) for inter-module communication
  • Run shopyo initialise after adding/removing modules
  • Static files are collected into static/modules/ - don't edit directly
  • Use shopyo clean to reset local development database

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

80.27%
按下载量换算1,727

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills