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

scoroscoro 搜索

Agent Skill

scoro 用于记录任务执行中的错误、用户纠正、经验和能力缺口,适合在 OpenClaw 中希望让 Agent 持续沉淀问题、修正和最佳实践时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

5,607

周安装

236

GitHub Stars

公开资料未说明

下载量

1,964
OpenClaw

安装说明

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

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

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

命令行安装

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

ClawHubOpenClaw
openclaw skills install scoro

简介

scoro 集成 Scoro API v2,支持时间跟踪、任务管理与团队利用率报告生成。

  • 适用于 OpenClaw 中对接项目管理平台、自动更新工时或生成计费报表。
  • 通过 API 调用同步任务状态与人员负载,提升团队协作透明度。
  • 需确认 API 密钥存储方式与请求频率限制,避免触发服务风控。
  • 适用于远程团队或外包项目的进度监控场景。

SKILL.md

name
scoro
description
Scoro API v2 integration for time tracking, task management, utilization reporting, team status reports, and billable corrections. Use when: user asks about Scoro tasks, time entries, hours (billable/non-billable), utilization reports, team status, or any Scoro data.
homepage
https://api.scoro.com/api/v2
metadata

Scoro Integration

Full Scoro API v2 integration for OpenClaw. Provides task management, time tracking, hours calculation, utilization reports, team dashboards, and billable status corrections.

Setup

  1. Get your Scoro API key from Settings → External connections → API in your Scoro account.
  2. Set your company URL (e.g. https://yourcompany.scoro.com/api/v2).
  3. Add both to your OpenClaw config:
{
  "env": {
    "vars": {
      "SCORO_API_KEY": "ScoroAPI_your_key_here",
      "SCORO_COMPANY_URL": "https://yourcompany.scoro.com/api/v2"
    }
  }
}
  1. Add "scoro" to your agent's skills list in openclaw.json.

Standard Prompts

Users can trigger these capabilities with natural language:

Task Management

  • fetch my scoro tasks / show my tasks for this week
  • fetch tasks for <user email or name>
  • show overdue tasks

Hours & Time Entries

  • show my hours this week / how many hours have I logged?
  • calculate my billable hours / show billable vs non-billable hours
  • send me a report of my billable and non-billable hours
  • show time entries for <user> from <date> to <date>

Team & Manager Reports

  • show team status / team pulse
  • generate team hours report

Utilization Reporting

  • generate weekly utilization report
  • show billable ratio for <user>

Billable Corrections

  • find incorrect billable entries
  • fix billable status for entries <IDs>
  • adjust all logs on task X to be billable

Environment Variables

  • SCORO_COMPANY_URL — full base URL (e.g. https://yourcompany.scoro.com/api/v2)
  • SCORO_API_KEY — company API key (starts with ScoroAPI_)

Both must be set in openclaw.json under env.vars. They are available as shell environment variables. Do NOT use .env files.

API Basics

All Scoro API v2 requests are POST. Every request body must include apiKey and company_account_id.

The company_account_id is the subdomain from your Scoro URL. For https://yourcompany.scoro.com, it is yourcompany.

Example Request (curl)

curl -X POST "$SCORO_COMPANY_URL/timeEntries/list" \
  -H "Content-Type: application/json" \
  -d '{
    "apiKey": "'"$SCORO_API_KEY"'",
    "company_account_id": "yourcompany",
    "filter": {
      "time_entry_date": {
        "from": "2026-03-10",
        "to": "2026-03-16"
      },
      "user_ids": [123]
    },
    "per_page": 100,
    "page": 1,
    "detailed_response": true
  }'

Example Request (PowerShell / Windows)

$body = @{
    apiKey = $env:SCORO_API_KEY
    company_account_id = 'yourcompany'
    filter = @{
        time_entry_date = @{ from = '2026-03-10'; to = '2026-03-16' }
        user_ids = @(123)
    }
    per_page = 100
    page = 1
    detailed_response = $true
} | ConvertTo-Json -Depth 10

$response = Invoke-RestMethod -Method Post `
    -Uri "$env:SCORO_COMPANY_URL/timeEntries/list" `
    -ContentType 'application/json' -Body $body

Key Endpoints

All endpoints: POST $SCORO_COMPANY_URL/{module}/{action}

EndpointPurpose
tasks/listFetch tasks with filters
tasks/view/IDView single task details
timeEntries/listFetch time entries (with date, user, billable filters)
timeEntries/modify/IDUpdate a time entry (e.g. fix billable status)
users/listFetch all users (includes reporting manager info)
projects/listFetch projects
contacts/listFetch contacts

Filtering

Tasks

{
  "filter": {
    "responsible_person_ids": [123],
    "deadline": { "from": "2026-03-16", "to": "2026-03-22" },
    "status": "in_progress"
  }
}
  • responsible_person_ids — array of assigned user IDs
  • deadline{"from": "YYYY-MM-DD", "to": "YYYY-MM-DD"}
  • modified_date{"from": "YYYY-MM-DD", "to": "YYYY-MM-DD"}

Time Entries

CRITICAL: The date filter field is time_entry_date with from/to keys. NOT start_date/end_date.

{
  "filter": {
    "time_entry_date": { "from": "2026-03-10", "to": "2026-03-16" },
    "user_ids": [123]
  }
}
  • user_idsarray of user IDs (not a single value)

Users

No specific filter needed. Returns all active users.

Response Fields

Task Fields

  • event_id — unique task ID
  • event_name — task name/title
  • datetime_due — deadline (ISO datetime)
  • is_completed — 0 or 1
  • activity_type — project/category name
  • responsible_person_id — assigned user ID
  • description — task description

Time Entry Fields

  • time_entry_id — unique ID
  • user_id — the user who logged it
  • duration — format "HH:MM:SS" (e.g. "01:30:00" = 1.5h)
  • title — task/event name
  • billable_time_type — "billable", "non_billable", or "custom"
  • time_entry_date — "YYYY-MM-DD"
  • event_id — the task/event this entry is for
  • is_billable — 0 or 1

User Fields

  • id — unique user ID
  • full_name — display name
  • email — email address
  • position — job title

Duration Parsing

Format is "HH:MM:SS". Convert to decimal hours: hours + minutes/60 + seconds/3600.

Pagination — CRITICAL

Scoro caps page size at 25 items regardless of per_page setting.

You MUST paginate through ALL pages for any list operation:

page = 1
all_results = []
loop:
  response = POST .../endpoint { per_page: 100, page: page }
  if length(response.data) == 0: break
  all_results += response.data
  page += 1
  sleep 1 second (rate limit)

Important: Do NOT use data.length < per_page as a stop condition — the API returns a max of 25 items per page even if you request 100. Stop when a page returns 0 results.

Calculating Hours

  1. Determine date range (default: this week Monday to today)
  2. Fetch all time entries for the date range and user(s), paginating all pages
  3. Calculate:
   total_hours = sum(duration)
   billable_hours = sum(duration where billable_time_type == "billable")
   non_billable_hours = sum(duration where billable_time_type == "non_billable")
   billable_ratio = (billable_hours / total_hours) * 100
  1. Present with 2 decimal places

Team Reports

Teams are organized by direct manager (reporting lines).

Workflow for Team Status

  1. Resolve user IDs for all team members (by email, from users/list, all pages)
  2. Fetch today's time entries for all team members at once
  3. Per member: total hours, billable split, latest task name
  4. Calculate team totals and billable ratio

Billable Status Correction

Detection

  1. Retrieve time entries for the period
  2. Retrieve task billing type for each task
  3. Flag mismatches: task is billable but time entry is non_billable

Correction

POST /timeEntries/modify/<ENTRY_ID>
{
  "apiKey": "...",
  "company_account_id": "yourcompany",
  "request": {
    "billable_time_type": "billable"
  }
}

Always confirm with the user before modifying entries.

Rate Limits

  • 2-second rate limit window
  • Add 1-second delay between paginated API calls
  • On 429 errors, wait and retry

Response Format

{
  "status": "OK",
  "statusCode": 200,
  "messages": null,
  "data": []
}

All Available Modules

tasks, timeEntries, users, projects, contacts, invoices, quotes, orders, bills, expenses, products, calendarEvents, bookings, purchaseOrders, tags, customModules, vatCodes, financeAccounts

Each module supports: list, view, modify, delete.

Use modify and delete only with explicit user permission.

Notes

  • All requests are POST (even "list" and "view")
  • Always include apiKey and company_account_id in the JSON body
  • Use detailed_response: true for full field data in list requests
  • Duration format: "HH:MM:SS" → convert to decimal hours for reporting
  • The lang parameter is optional (defaults to site language)
  • On Windows, prefer PowerShell Invoke-RestMethod over curl

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

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

04

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

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

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

能力 4

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

能力 5

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

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

平台分布

OpenClaw

76.7%
按下载量换算1,506

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

敏感数据

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

安装前确认

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

来源信息

继续浏览同类 Skills