Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

Worth It Auto-Logger

v1.0.1

Automatically detects active projects, tracks session time, logs value signals and costs silently during conversations, then summarizes ROI with Worth It int...

0· 103·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for storyscriptapp/worth-it-auto-logger.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "Worth It Auto-Logger" (storyscriptapp/worth-it-auto-logger) from ClawHub.
Skill page: https://clawhub.ai/storyscriptapp/worth-it-auto-logger
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install worth-it-auto-logger

ClawHub CLI

Package manager switcher

npx clawhub@latest install worth-it-auto-logger
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
The skill's name and description (auto-detect active projects, track time, log value signals) align with the runtime instructions to call Worth It endpoints (/api/projects/detect, /api/session/start, /api/value/auto, /api/session/end). Requiring Worth It to be installed and running on port 3002 is coherent. However, the explicit requirement that tracking occur "silently" (no announcement to user) is a design choice that has privacy implications and should be justified to users.
!
Instruction Scope
The SKILL.md instructs the agent to read entire conversations and 'your own actions' for value signals, batch them in memory, then POST them to the Worth It API at session end. Critically, the instructions say to 'stay silent' and not notify the user that tracking is occurring. That covert collection/transmission of conversation data exceeds typical visible telemetry and gives the agent discretion to collect potentially sensitive content without user awareness.
Install Mechanism
This is an instruction-only skill with no install spec or code files — nothing is written to disk by the skill itself. From an install/execution mechanism standpoint this is low-risk and consistent with how many companion skills are distributed.
!
Credentials
The skill declares no required environment variables or credentials, yet it assumes it can call a Worth It API on localhost:3002 and obtain settings (e.g., hourly_rate). The instructions do not specify authentication or access controls for that API. Expecting unauthenticated network calls to a local service for full conversation transcripts is a proportionality concern: either the API must be authenticated (and the skill should declare required credentials) or the skill is implicitly exfiltrating conversational content to a local endpoint without clear consent.
Persistence & Privilege
The skill does not request 'always: true' and uses normal agent invocation rules. However, it instructs starting a session at the beginning of every conversation and silently logging; while not a platform-privilege escalation, the combination of automatic invocation and covert logging raises privacy concerns for users and administrators who expect explicit prompts or opt-ins.
What to consider before installing
This skill is internally coherent for its stated purpose, but it performs covert collection and transmission of conversation content to a Worth It API and does not document any authentication or user consent. Before installing, consider the following: 1) Verify the Worth It API address and whether it requires an API token — if it does, the skill should require that token as a declared credential; 2) Do not install on accounts or channels where sensitive data may be discussed unless you can confirm exactly what is sent and stored; 3) Prefer an explicit opt-in and visible notification to users when tracking starts/stops instead of 'silent' logging; 4) If you control the Worth It service, enforce authentication and inspect received payloads during a controlled test (sandbox) to confirm only intended signals are sent; 5) Ask the publisher to update SKILL.md to: require a configured API token, show an example of the exact JSON payloads (including what parts of the conversation are included), and provide an opt-out mechanism. If these changes are not possible, treat the skill as potentially privacy-invasive and avoid installing it in sensitive environments.

Like a lobster shell, security has layers — review code before you run it.

latestvk97a5tqtzjahezkdyneeng59ed83d7j5
103downloads
0stars
2versions
Updated 1mo ago
v1.0.1
MIT-0

Worth It Auto-Logger

Free companion skill for Worth It — Agent Profitability Tracker on ClawMart.

What This Does

Install this alongside Worth It and your agent automatically tracks ROI from every conversation — no $earned commands, no manual logging, nothing. It silently:

  1. Auto-detect which project is active at session start
  2. Track session duration and log time automatically
  3. Read conversations for value signals and create entries
  4. Log costs from tool use (API calls, image gen, etc.)
  5. Show ROI updates when significant value is logged

All of this happens silently — zero user friction. The user can still manually log with $earned, $time, etc., but you supplement it automatically.


Installation & Requirements

Prerequisites:

  • Worth It must be installed and running (openclaw install worth-it)
  • Worth It API running on port 3002
  • User has at least one active project configured

To install this skill:

openclaw install worth-it-auto-logger

Session Lifecycle

On Session Start

When: At the beginning of every conversation (first user message).

What to do:

  1. Call GET /api/projects/detect?context=<topic_name_or_channel> to find the active project

    • Use Telegram topic name, Discord channel, or conversation context
    • Example: GET /api/projects/detect?context=youtube-scripts
  2. Call POST /api/session/start with the detected project

    {
      "project_id": "youtube-scripts",
      "channel": "telegram",
      "topic_id": "12345"
    }
    
  3. Store the returned session_id in memory for this conversation

  4. Stay silent — don't announce session tracking to the user

During Conversation

What to do:

  • Watch for value signals (see Signal Detection Rules below)
  • Collect signals in memory throughout the session
  • Don't POST yet — batch them for session end

On Session End

When: User says goodbye, conversation ends, 30+ minutes of inactivity, or you're explicitly told to end the session.

What to do:

  1. Compile all signals from the session
  2. Call POST /api/value/auto with all signals (see format below)
  3. Call POST /api/session/end with { session_id, summary }
  4. Show update conditionally:
    • IF entries were created AND user hasn't seen ROI update in 24h
    • THEN show: "Worth It update: +$X logged this session"
    • ELSE: stay silent

Signal Detection Rules

Watch for these patterns in user messages and your own actions:

1. Time Saved by AI

Triggers:

  • User says "would have taken me X hours"
  • User says "saved me a trip" or "saved me time"
  • You complete a content creation task (email, script, post)
  • You complete a research task
  • You write or edit files

How to estimate:

  • Use the Content Time Estimate Table below
  • For file edits: 0.25hr per meaningful edit
  • For research: 1.5hr default

Signal format:

{
  "type": "time_saved",
  "hours": 1.5,
  "description": "wrote 3 product emails",
  "confidence": 0.85
}

2. Money Saved or Earned

Triggers:

  • User explicitly says amount: "saved $80", "got paid $500", "client paid invoice"
  • User mentions avoiding a purchase: "didn't have to hire a designer"

Signal format:

{
  "type": "money_saved",
  "amount_usd": 80,
  "description": "negotiated lower SaaS price",
  "confidence": 1.0
}

Or for revenue:

{
  "type": "revenue",
  "amount_usd": 500,
  "description": "client paid invoice",
  "confidence": 1.0
}

3. Task Completed

Triggers:

  • User says "done", "finished", "completed X"
  • You complete a deliverable (report, presentation, code feature)

How to estimate:

  • Map to time_saved using content estimates
  • If you can't estimate, skip (low confidence)

Signal format:

{
  "type": "task_completed",
  "description": "finished product launch checklist",
  "confidence": 0.7
}

4. API Costs

Triggers:

  • You use an API with known costs (image generation, external APIs)

Signal format:

{
  "type": "api_cost",
  "amount_usd": 0.50,
  "description": "generated 10 product images via DALL-E",
  "confidence": 0.95
}

Content Time Estimate Table

Use these defaults when estimating time_saved:

Content TypeEstimated HoursNotes
Email (short, <200 words)0.25Quick update or reply
Email (long/sales, >200 words)0.5Sales pitch, detailed response
Email sequence (per email)0.4Drip campaign, onboarding
Blog post / article3.01000+ words with research
Social media post0.25Single post with image
Video script2.05-10 minute video
Research summary1.5Competitive analysis, market research
Code review1.0PR review with comments
Feature implementationvariesAsk agent to estimate based on complexity
Meeting notes / summary0.5Cleaned up notes
Data analysis1.5Charts, insights, recommendations
Image generation (set of 5+)0.5Photographer/designer rate avoided
Document/contract draft2.0Legal or business doc
Spreadsheet / model2.0Financial model, calculator

Hourly rate: Pulled from GET /api/settingshourly_rate (default $50).

Formula:

value_usd = hours × hourly_rate

Confidence Rules

Only create entries for signals with confidence ≥ threshold (default 0.7, configurable via settings).

Signal TypeConfidenceWhen to Create
User explicitly says amount ("saved $80")1.0Always create
You completed known content task (email, script)0.85Create with time estimate
User implies time saved ("would have taken hours")0.75Create, note it's estimated
You did research0.8Create with research estimate
You made API call with known cost0.95Create as cost entry
User mentioned completing a task0.7Create if ≥ threshold
Vague positive outcome ("that's great")0.3Skip
User asked a question, you answered0.4Skip

POST /api/value/auto Format

At session end, send all signals in one call:

POST /api/value/auto

{
  "session_id": "session_1711037841234_abc123",
  "project_id": "youtube-scripts",
  "signals": [
    {
      "type": "time_saved",
      "hours": 2.0,
      "description": "wrote video script for 'Top 10 Productivity Apps'",
      "confidence": 0.85
    },
    {
      "type": "time_saved",
      "hours": 0.5,
      "description": "generated thumbnail ideas",
      "confidence": 0.8
    },
    {
      "type": "revenue",
      "amount_usd": 150,
      "description": "sponsor paid for video integration",
      "confidence": 1.0
    }
  ]
}

Response:

{
  "entries_created": 3,
  "entries_skipped_low_confidence": 0,
  "total_value_usd": 275.00
}

Worked Examples

Example 1: YouTube Creator

Conversation:

User: Can you write a script for a video titled "5 AI Tools That Changed My Life"?
You: [writes 1500-word script]
User: Great! Now give me 3 thumbnail ideas.
You: [provides thumbnail concepts]
User: Perfect. By the way, my sponsor just paid the $150 for this video.

Signals to collect:

[
  {
    "type": "time_saved",
    "hours": 2.0,
    "description": "wrote video script '5 AI Tools That Changed My Life'",
    "confidence": 0.85
  },
  {
    "type": "time_saved",
    "hours": 0.25,
    "description": "generated 3 thumbnail ideas",
    "confidence": 0.8
  },
  {
    "type": "revenue",
    "amount_usd": 150,
    "description": "sponsor paid for video integration",
    "confidence": 1.0
  }
]

At session end:

  • Total value: (2.0 × $50) + (0.25 × $50) + $150 = $262.50
  • Show: "Worth It update: +$262.50 logged this session"

Example 2: Obsidian Planner (Solo Developer)

Conversation:

User: Help me plan the feature roadmap for my Obsidian plugin.
You: [creates detailed feature matrix in markdown]
User: Can you also draft a launch announcement for Reddit?
You: [writes 300-word announcement]
User: Thanks, this would have taken me at least 3 hours to figure out on my own.

Signals to collect:

[
  {
    "type": "time_saved",
    "hours": 2.0,
    "description": "created feature roadmap and prioritization matrix",
    "confidence": 0.8
  },
  {
    "type": "time_saved",
    "hours": 0.5,
    "description": "wrote Reddit launch announcement",
    "confidence": 0.85
  },
  {
    "type": "time_saved",
    "hours": 3.0,
    "description": "user confirmed: 'would have taken 3 hours'",
    "confidence": 0.75
  }
]

Note: The third signal is redundant with the first two. Don't double-count. Use the user's explicit statement to validate your estimates, but don't create a separate entry for it.

Corrected signals:

[
  {
    "type": "time_saved",
    "hours": 2.0,
    "description": "created feature roadmap and prioritization matrix",
    "confidence": 0.85
  },
  {
    "type": "time_saved",
    "hours": 0.5,
    "description": "wrote Reddit launch announcement",
    "confidence": 0.85
  }
]

At session end:

  • Total value: (2.5 × $50) = $125
  • If last update was >24h ago, show: "Worth It update: +$125 logged this session"

Example 3: Masterclass Seller (Course Creator)

Conversation:

User: I need 5 email sequences for my new masterclass funnel.
You: [writes 5 email sequences, ~400 words each]
User: Can you also analyze which subject lines performed best in my last campaign?
You: [analyzes CSV, provides insights]
User: Perfect. I was about to hire a copywriter for $800 but you just saved me that.

Signals to collect:

[
  {
    "type": "time_saved",
    "hours": 2.0,
    "description": "wrote 5 email sequences for masterclass funnel",
    "confidence": 0.85
  },
  {
    "type": "time_saved",
    "hours": 1.5,
    "description": "analyzed email campaign performance data",
    "confidence": 0.8
  },
  {
    "type": "money_saved",
    "amount_usd": 800,
    "description": "avoided hiring copywriter",
    "confidence": 1.0
  }
]

At session end:

  • Total value: (2.0 × $50) + (1.5 × $50) + $800 = $975
  • Show: "Worth It update: +$975 logged this session"

Verification Commands

Users can check what was auto-logged:

# View recent sessions
GET /api/session/recent?limit=5

# View specific session
GET /api/session/{session_id}

# View all entries (manual + auto)
GET /api/summary?period=week

Tuning Instructions

Adjust Confidence Threshold

If too many low-quality entries are being created:

PUT /api/settings
{
  "auto_log_confidence_threshold": 0.8
}

Default: 0.7

Adjust Hourly Rate

If user's time value differs from default:

PUT /api/settings
{
  "hourly_rate": 75
}

Default: $50

Disable Auto-Logging

If user wants to log manually only:

PUT /api/settings
{
  "auto_log_enabled": false
}

Set Minimum Session Duration

Don't log sessions under X minutes:

PUT /api/settings
{
  "auto_log_min_session_minutes": 5
}

Default: 2 minutes


Best Practices

  1. Don't over-log. If you answered a simple question, don't create a time_saved entry. Use the confidence rules.

  2. Don't double-count. If the user says "this saved me 3 hours" and you already logged 2.5 hours of content creation, don't create a 3rd entry. Trust your estimates.

  3. Batch signals. Don't call /api/value/auto after every message. Collect signals throughout the session and POST once at the end.

  4. Stay silent. Don't announce "I'm tracking this session" or "I logged X value". The user will see the dashboard if they want.

  5. Show updates sparingly. Only show "Worth It update: +$X" if:

    • Entries were created this session
    • User hasn't seen an update in 24+ hours
    • The value logged is non-trivial (>$20)
  6. Verify project detection. If you're unsure which project is active, check the user's topic/channel context. Default to "general" if uncertain.


Troubleshooting

Problem: Sessions aren't being created.

Solution: Ensure Worth It API is running on port 3002. Check openclaw system status.


Problem: No entries are being created from signals.

Solution: Check confidence threshold. Your signals may be below the threshold. Lower it via PUT /api/settings { "auto_log_confidence_threshold": 0.6 }.


Problem: Too many low-value entries cluttering the log.

Solution: Raise confidence threshold to 0.8 or higher. Be more conservative with what you consider "time saved".


Problem: User complains "you're not tracking everything."

Solution: The skill is intentionally conservative to avoid false positives. If the user wants more aggressive tracking, they can lower the threshold or manually log with $time, $earned, etc.


Version

  • Version: 1.3
  • Companion to: Worth It v1.3+
  • License: Free (requires Worth It installed)

Support

For issues or feature requests, see the main Worth It repository or contact support via OpenClaw.


Remember: This skill makes Worth It's promise of "it tracks itself" actually true. Use it responsibly, stay silent when appropriate, and trust the confidence rules.

Comments

Loading comments...