ソース情報
- リポジトリ
- RunnerQuan/SAFE-Agent
- ソースの最終更新活動
- 2026年3月30日 04:33
- 検出された SKILL.md の言語
- 英語
- スター
- 0
- フォーク
- 0
インストール方法
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
ソースファイルを確認
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
メニュー
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/RunnerQuan/SAFE-Agent --skill canifiコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
Find doctors with Healthgrades - search providers, read reviews, and check credentials
Presentation creation, editing, and analysis. When Claude needs to work with presentations (.pptx files) for: (1) Creating new presentations, (2) Modifying or editing content, (3) Working with layouts, (4) Adding comments or speaker notes, or any other presentation tasks.
基于RFM模型和回归算法的客户生命周期价值(LTV)预测分析工具,支持电商和零售业务的客户价值预测。使用时需要客户交易数据、订单历史或消费记录,自动进行RFM特征工程、回归建模和价值预测。
SOC 職業分類に基づく
SKILL.md を表示中
| name | canifi |
| description | Core LifeOS skill for research, synthesis, and Notion storage workflows |
| category | productivity |
Before using this skill, configure the following environment variables via canifi-env:
# Required
canifi-env set CANIFI_GOOGLE_EMAIL "your-email@gmail.com"
canifi-env set CANIFI_GOOGLE_PASSWORD "your-password"
canifi-env set CANIFI_NOTION_TOKEN "ntn_your_token_here"
canifi-env set CANIFI_IMESSAGE_CONTACTS "+18001234567,+18009876543,email@example.com"
# Optional
canifi-env set CANIFI_NOTION_WORKSPACE "Your Workspace Name"
canifi-env set CANIFI_SCRIPTS_PATH "~/canifi"
You will also need to:
$CANIFI_SCRIPTS_PATHYour credentials, your choice. Canifi LifeOS respects your privacy.
If you prefer not to share credentials with Claude Code:
If you're comfortable sharing credentials, you can store them locally:
canifi-env set SERVICE_EMAIL "your-email"
canifi-env set SERVICE_PASSWORD "your-password"
Note: Credentials stored in canifi-env are only accessible locally on your machine and are never transmitted.
When a prompt starts with "canifi" (case-insensitive), engage LifeOS mode immediately.
Examples:
1. RESEARCH (if needed) --> Gemini Deep Research via Playwright MCP
2. SYNTHESIZE --> Claude processes and structures the information
3. STORE --> Save to appropriate Notion database via MCP
4. CONFIRM --> Report what was accomplished and where it was stored
$CANIFI_GOOGLE_EMAIL$CANIFI_GOOGLE_PASSWORD$CANIFI_NOTION_TOKEN$CANIFI_NOTION_WORKSPACEmcp__notion__*) over browser automationContacts are defined in $CANIFI_IMESSAGE_CONTACTS as a comma-separated list.
NEVER message anyone outside the whitelist without explicit permission.
mcp__playwright__*) - PRIMARY for Browser TasksUse for:
mcp__notion__*) - PRIMARY for Database OperationsUse for:
NEVER use WebSearch for LifeOS research tasks.
$CANIFI_SCRIPTS_PATH/)Use for:
ALL LifeOS research MUST use Gemini Deep Research at gemini.google.com
$CANIFI_GOOGLE_EMAIL)browser_wait_for with 10-minute intervals to check completionOption A: Background Agent
- Launch Deep Research in background Task agent
- Continue other work in main thread
- Check back for results
Option B: Periodic Polling
- Start research
- Wait 10 minutes
- Take snapshot to check status
- Repeat until complete
You need to create these databases in your Notion workspace and configure their IDs.
Create a CANIFI_DATABASE_IDS configuration file or environment variable with your database IDs:
# Core Structure
CAPTURE_INBOX=<your-capture-page-id>
COMMAND_CENTER=<your-command-center-id>
# Daily
HABITS=<your-habits-db-id>
JOURNAL=<your-journal-db-id>
WEEKLY_REVIEW=<your-weekly-review-db-id>
# Work
GOALS=<your-goals-db-id>
TASKS=<your-tasks-db-id>
PROJECTS=<your-projects-db-id>
# Mind
IDEAS=<your-ideas-db-id>
CONCEPTS=<your-concepts-db-id>
RESEARCH_HUB=<your-research-hub-db-id>
MEDIA_LIBRARY=<your-media-library-db-id>
READING_LIST=<your-reading-list-db-id>
ENTERTAINMENT=<your-entertainment-db-id>
PERSONAL_DEVELOPMENT=<your-personal-dev-db-id>
BLOGS=<your-blogs-db-id>
# Health
EXERCISE_LIBRARY=<your-exercise-library-db-id>
WORKOUT_LOG=<your-workout-log-db-id>
SLEEP_LOG=<your-sleep-log-db-id>
BODY_METRICS=<your-body-metrics-db-id>
SUPPLEMENTS=<your-supplements-db-id>
NUTRITION=<your-nutrition-db-id>
RECIPES=<your-recipes-db-id>
MEAL_PLANS=<your-meal-plans-db-id>
GROCERY_LISTS=<your-grocery-lists-db-id>
# Relationships
PERSONAL_CRM=<your-crm-db-id>
GIFT_IDEAS=<your-gift-ideas-db-id>
# Environment
WARDROBE=<your-wardrobe-db-id>
TRIPS=<your-trips-db-id>
# Finance
SUBSCRIPTIONS=<your-subscriptions-db-id>
BUDGETS=<your-budgets-db-id>
When adding new content, use this decision tree:
| Command | Action | Script |
|---|---|---|
canifi | Show help | canifi-help.sh |
canifi [message] | Continue conversation | canifi-send.sh |
canifi clear | Clear and start fresh | canifi-send.sh --clear |
canifi abort | Stop generation | canifi-abort.sh |
canifi interrupt | Send escape key | tmux send-keys Escape |
canifi status | Show session state | canifi-status.sh |
canifi summarize | Get conversation summary | canifi-send.sh |
canifi pause | Pause live stream | canifi-pause.sh |
canifi resume | Resume live stream | canifi-resume.sh |
canifi help | Show commands | canifi-help.sh |
All LifeOS scripts should be installed in $CANIFI_SCRIPTS_PATH (default: ~/canifi/):
# Send text message
$CANIFI_SCRIPTS_PATH/canifi-send.sh "Your message here"
# Send image
$CANIFI_SCRIPTS_PATH/canifi-send-image.sh /path/to/image.png
# Direct osascript (use +1 format for phone numbers)
osascript -e 'tell application "Messages" to send "Hello!" to buddy "+18001234567"'
Before sending any message, validate the recipient is in $CANIFI_IMESSAGE_CONTACTS:
# Parse whitelisted contacts
IFS=',' read -ra CONTACTS <<< "$CANIFI_IMESSAGE_CONTACTS"
# Check if recipient is whitelisted
is_whitelisted() {
local recipient="$1"
for contact in "${CONTACTS[@]}"; do
if [[ "$contact" == "$recipient" ]]; then
return 0
fi
done
return 1
}
canifi clear to explicitly start freshcanifilifeos)canifi-stream.sh streams Claude output to iMessage in real-timecanifi pause / canifi resume to control streamWhen making external MCP calls (Notion, etc.), browser auth popups may appear. Since Claude blocks while waiting for MCP response:
WHY: Popups appear AFTER MCP call starts, and Claude cannot check browser mid-call - background agent solves this.
$CANIFI_GOOGLE_EMAIL / $CANIFI_GOOGLE_PASSWORD$CANIFI_IMESSAGE_CONTACTSUser: "canifi, research the best note-taking systems for developers"
1. Detect "canifi" trigger --> Engage LifeOS mode
2. Navigate to gemini.google.com via Playwright
3. Authenticate with $CANIFI_GOOGLE_EMAIL (automatic)
4. Start Deep Research: "best note-taking systems for developers 2024"
5. Wait/poll for completion (up to 20 min)
6. Extract and synthesize findings
7. Store in Research Hub database via Notion MCP
8. Confirm: "Research complete. Stored in Research Hub: [link]"
User: "canifi add task: review quarterly goals"
1. Detect "canifi" trigger --> Engage LifeOS mode
2. Route: task --> Tasks database
3. Use Notion MCP to create task entry
4. Confirm: "Task added to Tasks: 'review quarterly goals'"
After completing research:
1. Validate recipient is in $CANIFI_IMESSAGE_CONTACTS
2. Use canifi-send.sh to notify user
3. $CANIFI_SCRIPTS_PATH/canifi-send.sh "Research complete! Check your Research Hub."
$CANIFI_GOOGLE_EMAIL and $CANIFI_GOOGLE_PASSWORD are set correctly$CANIFI_NOTION_TOKEN is valid and not expired@notionhq/notion-mcp-server is configured in Claude settings$CANIFI_SCRIPTS_PATH have execute permissions