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

# 定期タスク

> 繰り返し発生する作業を自動化—スケジュールまたは特定の時間にタスクを実行します

export const CodePrompt = ({children}) => {
  const [isCopied, setIsCopied] = useState(false);
  const textContent = useMemo(() => {
    const extractText = (children, depth = 0) => {
      const maxDepth = 10;
      if (depth > maxDepth) return '';
      if (children == null) return '';
      if (typeof children === 'string' || typeof children === 'number') {
        return String(children);
      }
      if (Array.isArray(children)) {
        return children.map(child => extractText(child, depth + 1)).join('');
      }
      if (typeof children === 'object' && children.props) {
        return extractText(children.props.children, depth + 1);
      }
      return '';
    };
    return extractText(children);
  }, [children]);
  const handleAskManus = useCallback(() => {
    const url = new URL('https://manus.im');
    if (textContent) {
      url.searchParams.set('q', textContent);
      url.searchParams.set('submit', '1');
    }
    window.open(url.toString(), '_blank');
  }, [textContent]);
  const handleCopy = useCallback(async () => {
    try {
      await navigator.clipboard.writeText(textContent);
      setIsCopied(true);
      setTimeout(() => {
        setIsCopied(false);
      }, 2000);
    } catch (err) {
      const textArea = document.createElement('textarea');
      textArea.value = textContent;
      textArea.style.position = 'fixed';
      textArea.style.opacity = '0';
      document.body.appendChild(textArea);
      textArea.select();
      try {
        document.execCommand('copy');
        setIsCopied(true);
        setTimeout(() => {
          setIsCopied(false);
        }, 2000);
      } catch (fallbackErr) {
        console.error(fallbackErr);
      }
      document.body.removeChild(textArea);
    }
  }, [textContent]);
  return <div className="code-block mt-5 mb-8 not-prose rounded-2xl relative group text-gray-950 dark:text-gray-50 codeblock-light border border-gray-950/10 dark:border-white/10 dark:twoslash-dark bg-transparent dark:bg-transparent">
      <div className="absolute top-3 right-4 flex items-center gap-1.5">
        <div className="z-10 relative">
          <button onClick={handleCopy} className="h-[26px] w-[26px] flex items-center justify-center rounded-md backdrop-blur peer group/copy-button " data-testid="copy-code-button" aria-label="Copy the contents from the code block">
            {isCopied ? <svg width="16" height="11" viewBox="0 0 16 11" fill="none" xmlns="http://www.w3.org/2000/svg" class="fill-primary dark:fill-primary-light">
                <path d="M14.7813 1.21873C15.0751 1.51248 15.0751 1.98748 14.7813 2.2781L6.53135 10.5312C6.2376 10.825 5.7626 10.825 5.47197 10.5312L1.21885 6.28123C0.925098 5.98748 0.925098 5.51248 1.21885 5.22185C1.5126 4.93123 1.9876 4.9281 2.27822 5.22185L5.99697 8.9406L13.7188 1.21873C14.0126 0.924976 14.4876 0.924976 14.7782 1.21873H14.7813Z"></path>
              </svg> : <svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg" className="w-4 h-4 text-gray-400 group-hover/copy-button:text-gray-500 dark:text-white/40 dark:group-hover/copy-button:text-white/60">
                <path d="M14.25 5.25H7.25C6.14543 5.25 5.25 6.14543 5.25 7.25V14.25C5.25 15.3546 6.14543 16.25 7.25 16.25H14.25C15.3546 16.25 16.25 15.3546 16.25 14.25V7.25C16.25 6.14543 15.3546 5.25 14.25 5.25Z" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round"></path>
                <path d="M2.80103 11.998L1.77203 5.07397C1.61003 3.98097 2.36403 2.96397 3.45603 2.80197L10.38 1.77297C11.313 1.63397 12.19 2.16297 12.528 3.00097" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round"></path>
              </svg>}
          </button>
          <div aria-hidden="true" className="absolute top-11 left-1/2 transform whitespace-nowrap -translate-x-1/2 -translate-y-1/2 peer-hover:opacity-100 opacity-0 text-white rounded-lg px-1.5 py-0.5 text-xs bg-primary-dark">
            {isCopied ? 'Copied' : 'Copy'}
          </div>
        </div>
        <div className="z-10 relative">
          <button onClick={handleAskManus} className="h-[26px] w-[26px] flex items-center justify-center rounded-md backdrop-blur peer group/ask-manus " id="ask-ai-code-block-button" aria-label="Ask Manus">
            <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" className="w-4 h-4 text-gray-400 group-hover/ask-manus:text-gray-500 dark:text-white/40 dark:group-hover/ask-manus:text-white/60">
              <path d="M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z" />
              <path d="M12 8v6" />
              <path d="M9 11h6" />
            </svg>
          </button>
          <div aria-hidden="true" className="absolute top-11 left-1/2 transform whitespace-nowrap -translate-x-1/2 -translate-y-1/2 peer-hover:opacity-100 opacity-0 text-white rounded-lg px-1.5 py-0.5 text-xs bg-primary-dark">
            Ask Manus
          </div>
        </div>
      </div>

      <div className="w-0 min-w-full max-w-full py-3.5 px-4 h-full dark:bg-codeblock relative text-sm leading-6 children:!my-0 children:!shadow-none children:!bg-transparent transition-[height] duration-300 ease-in-out code-block-background [&_*]:ring-0 [&_*]:outline-0 [&_*]:focus:ring-0 [&_*]:focus:outline-0 [&_pre>code]:pr-[3rem] [&_pre>code>span.line-highlight]:min-w-[calc(100%+3rem)] [&_pre>code>span.line-diff]:min-w-[calc(100%+3rem)] rounded-2xl bg-white overflow-x-auto scrollbar-thin scrollbar-thumb-rounded scrollbar-thumb-black/15 hover:scrollbar-thumb-black/20 active:scrollbar-thumb-black/20 dark:scrollbar-thumb-white/20 dark:hover:scrollbar-thumb-white/25 dark:active:scrollbar-thumb-white/25" style={{
    fontVariantLigatures: 'none',
    height: 'auto',
    backgroundColor: 'rgb(255, 255, 255)'
  }}>
        <div className="font-mono whitespace-pre leading-6">{children}</div>
      </div>
    </div>;
};

定期タスクを使用すると、Manus がスケジュールに基づいてタスクを実行することで、繰り返し発生する作業を自動化できます。一度設定すれば、Manus が日報、週次調査、月次分析、その他の繰り返し発生するワークフローを自動的に処理します。

<iframe src="https://www.youtube.com/embed/X1z7ZgXm1Lo" title="YouTube動画プレーヤー" frameborder="0" className="w-full aspect-video rounded-xl" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen />

## クイックスタート

### 1回限りのタスク

<CodePrompt>
  "明日午前9時にこのタスクを実行してください: 過去24時間の主要なAIニュースを調査し、
  概要をメールで送信してください"
</CodePrompt>

### 繰り返しタスク

<CodePrompt>
  "毎週月曜日の午前8時に、競合他社トップ5を調査し、
  過去1週間の製品アップデートやニュースの概要を送信してください"
</CodePrompt>

### 複雑なスケジュール

<CodePrompt>
  "毎月1日に、ウェブサイトのトラフィックデータを分析し、
  主要なインサイトを含むレポートを作成し、Notionデータベースに投稿してください
</CodePrompt>

## 定期タスクを使用するタイミング

用途:

* **繰り返し調査** (日次のニュース概要、週次の競合他社の更新)
* **定期レポート** (月次分析、週次パフォーマンス概要)
* **定期的なデータ収集** (価格スクレイピング、メンション追跡)
* **自動監視** (更新の確認、変更の追跡)

使用しないケース:

* 今すぐ必要な1回限りのタスク（通常どおり実行してください）
* リアルタイム監視（定期タスクは特定の時間に実行され、継続的には実行されません）

## 簡単な例

### 例 1: 日次ニュースダイジェスト

<CodePrompt>
  "平日の毎朝7時に、過去24時間のAI業界ニュースを調査してください。
  焦点: 資金調達の発表、製品の発売、主要なパートナーシップ。
  5つの箇条書きの概要をメールで送信してください。"
</CodePrompt>

**スケジュール**: 毎日午前7時（平日のみ）

**出力**: 厳選されたニュース概要を含むメール

### 例 2: 週次競合他社追跡

<CodePrompt>
  "毎週金曜日の午後5時に、これら10社の競合他社について、新しいブログ投稿、
  製品アップデート、価格変更、求人情報を確認してください。比較
  表を作成し、Google Driveに保存してください。"
</CodePrompt>

**スケジュール**: 毎週（金曜日の午後5時）

**出力**: Google Drive内の比較表

### 例 3: 月次分析レポート

<CodePrompt>
  "毎月1日に、先月のウェブサイトトラフィックを分析してください。
  スライドプレゼンテーションを作成し、カバーする内容: 訪問者の傾向、トップページ、トラフィックソース、
  および主要なインサイト。Slack #marketing に投稿してください。"
</CodePrompt>

**スケジュール**: 毎月（毎月1日の午前9時）

**出力**: Slackに投稿されたスライドプレゼンテーション

## 設定方法

**ステップ 1: タスクを記述する** Manusに実行させたいことを明確に述べてください。

**ステップ 2: スケジュールを指定する**

* 「毎日午前9時」
* 「毎週月曜日午前8時」
* 「毎月1日」
* 「毎平日午前7時」
* 「明日午後3時」（1回限り）

**ステップ 3: 出力を定義する**

* 結果をメールで送信する
* Slackチャンネルに投稿する
* Google Driveに保存する
* スプレッドシートを更新する
* コネクタ経由で送信する

## スケジュールオプション

| スケジュールタイプ | 例                | ユースケース             |
| :-------- | :--------------- | :----------------- |
| **日次**    | 「毎日午前9時」         | ニュースダイジェスト、日次メトリクス |
| **平日**    | 「毎平日午前8時」        | ビジネスレポート、業務の更新     |
| **週次**    | 「毎週月曜日午前10時」     | 週次レビュー、競合他社追跡      |
| **月次**    | 「毎月1日午前9時」       | 月次レポート、請求分析        |
| **カスタム**  | 「毎週火曜日と木曜日の午後2時」 | 特定の繰り返しニーズ         |
| **1回限り**  | 「明日午後3時」         | 遅延実行               |

## 定期タスクの管理

**アクティブなスケジュールを表示**: 設定 → 定期タスクに移動して、すべてのアクティブなスケジュールを確認します。

**スケジュールを一時停止**: 削除せずに、一時的にスケジュールをオフにします。

**スケジュールを編集**: 時間、タスクの説明、または出力方法を変更します。

**スケジュールを削除**: 不要になったスケジュールを削除します。

**実行履歴を表示**: 過去の実行、結果、およびエラーを確認します。

## 定期タスクを最適化するためのヒント

**時間を明確に指定する**:

* ✅ 「毎平日午前8時 EST」
* ❌ 「朝に」

**明確な出力を定義する**:

* ✅ 「5つの箇条書きの概要をメールで送信してください」
* ✅ 「Slack #team チャンネルに投稿してください」
* ❌ 「見つけたものを教えてください」

**調査の時間枠を含める**：

* ✅ 「過去24時間のニュース」
* ✅ 「先週以降の更新」
* ❌ 「最近のニュース」（曖昧）

**スケジュールする前にテストする**：

* 期待どおりに動作することを確認するために、まず手動でタスクを実行します
* その後、スケジュールを設定します

## クイックユースケース

| ユースケース              | スケジュール    | 出力               |
| :------------------ | :-------- | :--------------- |
| **ニュースモニタリング**      | 毎日午前7時    | メール概要            |
| **競合他社追跡**          | 毎週金曜日午後5時 | Google Driveレポート |
| **ソーシャルメディアモニタリング** | 毎日午前9時    | Slack通知          |
| **分析レポート**          | 毎月1日      | スライドプレゼンテーション    |
| **価格追跡**            | 毎日午前6時    | スプレッドシートの更新      |
| **コンテンツキュレーション**    | 平日午前8時    | メール概要            |

## よくある質問

<AccordionGroup>
  <Accordion title="定期タスクが失敗した場合、どうなりますか？">
    Manusが通知し、エラーをログに記録します。問題を確認し、タスクを調整できます。
  </Accordion>

  <Accordion title="タスクをすぐに実行すると同時にスケジュール設定できますか？">
    はい。テストのためにすぐに実行し、その後、繰り返しスケジュールを設定できます。
  </Accordion>

  <Accordion title="スケジュールはどのタイムゾーンに基づいていますか？">
    あなたのアカウントのタイムゾーン（「設定」で設定）。プロンプトでタイムゾーンを指定できます：「午前9時 EST」
  </Accordion>

  <Accordion title="いくつの定期タスクを設定できますか？">
    ご利用のプランによって異なります。「設定」→「定期タスク」で制限を確認してください。
  </Accordion>

  <Accordion title="広く調査（Wide Research）タスクをスケジュールできますか？">
    はい。Manusが実行できるタスクはすべてスケジュール設定できます。
  </Accordion>
</AccordionGroup>

***
