> ## Documentation Index
> Fetch the complete documentation index at: https://kawax.biz/llms.txt
> Use this file to discover all available pages before exploring further.

# Laravel Console Starter

> 以 artisan 指令為主的 Laravel starter kit。透過 GitHub Actions 排程執行，並以通知傳送輸出結果。

## 概觀

[laravel-console-starter](https://github.com/invokable/laravel-console-starter) 是一款以自訂 artisan 指令為核心，加速 Laravel 應用程式開發的 starter kit。

它不是打造獨立的 CLI 工具，而是能快速建立可完整運用 Laravel 框架生態系（依賴注入、通知、排程、測試）的 console 應用程式。基本的使用情境是透過 GitHub Actions 排程執行，並將結果以郵件或 Slack 等通知方式傳送出去。

## 需求

* PHP `^8.3`
* Laravel Framework `^13.0`
* Laravel Installer `^5.24`

## 安裝

```bash theme={null}
laravel new --using=revolution/laravel-console-starter --no-interaction my-app
```

安裝後的主要目錄結構：

```
my-app/
├── app/Console/Commands/   # 放置自訂 artisan 指令
├── .github/workflows/
│   └── cron.yml            # GitHub Actions 排程範例
├── config/                 # 應用程式設定
└── routes/console.php      # 指令註冊
```

## 主要特色

<Columns cols={3}>
  <Card title="專為 Console 應用" icon="terminal">
    去除 Web 用途的額外負擔，可專注於 artisan 指令開發的架構。
  </Card>

  <Card title="GitHub Actions 排程" icon="clock">
    無需伺服器上的 cron job。從一開始就包含 `.github/workflows/cron.yml` 設定範例。
  </Card>

  <Card title="運用 Laravel 生態系" icon="layers">
    通知、HTTP client、測試、DI 容器等 Laravel 豐富功能可直接使用。
  </Card>
</Columns>

## 快速上手

### 建立指令

```bash theme={null}
php artisan make:command Hello --command=hello
```

會產生 `app/Console/Commands/Hello.php`。在 `handle()` 方法中實作邏輯，然後執行指令。

```bash theme={null}
php artisan hello
```

### 透過 GitHub Actions 排程執行

編輯 `.github/workflows/cron.yml`，設定要執行的指令與排程。

```yaml theme={null}
on:
  schedule:
    - cron: '0 0 * * *'  # 每天 UTC 上午 0 點

jobs:
  cron:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6
      - uses: shivammathur/setup-php@v2
        with:
          php-version: 8.5
      - run: composer install --no-dev -q
      - run: cp .env.example .env
      - run: php artisan key:generate
      - run: php artisan your:command
```

### 發送通知

要將指令執行結果作為通知發送，可透過 `make:notification` 建立類別，並以 `Notification` facade 發送。

```bash theme={null}
php artisan make:notification TaskCompleted
```

```php theme={null}
Notification::route('mail', 'admin@example.com')
    ->notify(new TaskCompleted('處理已完成'));
```

<Tip>
  若需要設定通知頻道（郵件、Slack 等），請以 `php artisan config:publish mail` 或 `php artisan config:publish services` 公開設定檔。
</Tip>

## 應用程式構想

以下是使用此 starter kit 可以打造的應用程式構想。

<AccordionGroup>
  <Accordion title="監控與分析">
    * 網站存活監控與 Slack 警示
    * 伺服器資源使用狀況報告透過 Email 發送
    * SSL 憑證到期日檢查與通知
    * API 回應時間監控與警示
    * 追蹤競爭對手價格變化並以 Discord 通知
  </Accordion>

  <Accordion title="財務與商業">
    * 以 Email 發送 Google AdSense 收益
    * 將 AWS 費用通知至 Discord
    * 每日加密貨幣投資組合更新至 Discord
    * 股價警示至 Slack 頻道
    * 帳單付款期限提醒
    * 月度支出報告的產生與發送
  </Accordion>

  <Accordion title="資料處理與報表">
    * 舊 log 檔清理與儲存空間報告
    * 不同 API 間的資料同步與結果通知
    * CSV 資料匯入與處理結果通知
    * 定期資料匯出並上傳至雲端儲存
  </Accordion>

  <Accordion title="內容與行銷">
    * 網站失效連結檢查與報告
    * SEO 關鍵字排名監控與變動通知
    * 部落格文章績效指標的週報
    * RSS feed 內容彙整與通知
  </Accordion>

  <Accordion title="開發與 DevOps">
    * GitHub 儲存庫依賴套件的安全警示
    * 程式碼靜態分析報告
    * 部署後的應用程式健康檢查
    * API 文件變更偵測與通知
  </Accordion>

  <Accordion title="AI 及其他">
    * 使用 [laravel-copilot-sdk](https://github.com/invokable/laravel-copilot-sdk) 建立 AI agent 工具
    * 使用 [laravel/mcp](https://github.com/laravel/mcp) 套件建立本機 MCP 伺服器
    * 網域到期日監控與警示
    * Google Trends 關鍵字監控與通知
    * 個人化的支出類別洞察報告
  </Accordion>
</AccordionGroup>

## 文件

<Columns cols={2}>
  <Card title="教學" href="/zh-TW/packages/laravel-console-starter/tutorial" icon="book-open">
    從安裝、建立指令、透過 GitHub Actions 排程、通知發送，到實務應用範例。
  </Card>
</Columns>

## 參考連結

* GitHub：[invokable/laravel-console-starter](https://github.com/invokable/laravel-console-starter)
* DeepWiki：[invokable/laravel-console-starter](https://deepwiki.com/invokable/laravel-console-starter)


## Related topics

- [Laravel Console Starter](/en/packages/laravel-console-starter/index.md)
