# Automations

The Automations page lets users install agent skills, enable them, and configure run schedules. Skills run autonomously in the background.

***

## Available Skills

### Noel Research

**Skill name:** `noel-research`

Runs Noel's 8-hour autonomous research shift. Collects market data every 30 minutes, sends interim reports at 2.5h and 5h, final report at 8h — all via Telegram.

* **Trigger:** On-demand (Start/Stop buttons) or via MCP `start_research`
* **Reports:** Telegram + visible in Brain page
* **Data sources:** CoinGecko, Grok, Bankr

### Gloria AI

**Skill name:** `gloria-default`

AI/Web3 news and intelligence updates. Fetches headlines, project analysis, and ecosystem trends.

* **Status:** Active in scheduled mode
* **MCP:** Coming soon

### CoinGecko

**Skill name:** `coingecko-default`

Periodic market data snapshots — trending coins, top movers, price updates.

* **Trigger:** Scheduled interval
* **MCP tool:** `get_market_data`, `get_token_data`

***

## Automation Card

Each skill in the Automations page shows:

| Field        | Description                   |
| ------------ | ----------------------------- |
| **Name**     | Skill display name            |
| **Status**   | Running / Done / Error / Idle |
| **Toggle**   | Enable/disable the skill      |
| **Interval** | How often it runs (minutes)   |
| **Last Run** | Timestamp of last execution   |
| **Run Now**  | Manually trigger the skill    |

***

## Enable/Disable a Skill

Toggling a skill calls:

```typescript
api.userNotifications.toggleResearchSkill({ userId, enabled })
```

This writes to `userSkillConfig`:

```
skillName: "noel-research"
enabled: true/false
userId: ...
config: { interval: 30 }
```

***

## Manual Trigger

"Run Now" button triggers an on-demand execution. For Noel Research, this starts a fresh 8-hour shift immediately.

For Gloria and CoinGecko, it fires a single data fetch and logs the result to `agentRuns`.

***

## Scheduled Execution

Two background crons handle automatic execution:

| Cron                    | Interval    | Handler                                                    |
| ----------------------- | ----------- | ---------------------------------------------------------- |
| `collect-research-data` | Every 5 min | Checks active shift jobs, collects data when 30min elapsed |
| `send-research-reports` | Every 5 min | Checks if interim/final report is due, generates and sends |

Crons only do work if there are active research jobs. No active jobs = no API calls, no cost.

***

## Research-Enabled Chat

When "Noel Research" skill is enabled in Automations, every chat message to Noel automatically runs the research orchestrator first:

```
User sends message
      │
      ▼
Orchestrator runs (CoinGecko + Grok + Bankr + Claude synthesis)
      │
      ▼
Research context injected into system prompt
      │
      ▼
Noel responds with live market context
      │
      ▼
Chat shows research block + Noel's answer
```

This makes every conversation data-fresh without the user having to trigger research manually.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.noelclaw.fun/core-features/automations.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
