# Snow Monkey Forms フック一覧
> **MW WP Form との違い**
>
> - SMF には **フォーム ID ごとの動的フック名**(`xxx-123` のような suffix)はありません。すべて **全フォーム共通** のフックです。
> - 問い合わせデータの DB 保存機能は標準ではなく、ファイルアップロードの一時保存のみです。
---
# 全体
| フック名 | タイプ | 説明 |
|---|---|---|
| `snow_monkey_forms_pro` | フィルター | Snow Monkey テーマ利用時の Pro 判定を上書きできる。`is_pro()` で参照。 |
| `snow_monkey_forms/enqueue/fallback_style` | フィルター | Pro 以外の環境でフォールバック CSS(sass-basis 代替)を読み込むかどうか。デフォルトは `! is_pro()`。 |
---
# イベントフック(管理画面)
| フック名 | タイプ/**
* @param {string[]} wordsContainer
* @param {string[]} wordsQuery
* @return {number[]}
*/
var stringIndices = function(wordsContainer, wordsQuery) {
const n = wordsContainer.length;
const m = wordsQuery.length;
// Precompute lengths
const lengths = wordsContainer.map(w => w.length);
// Find max query length to limit trie depth
let maxQ = 0;
for (const q of wordsQuery) maxQ = Math.max(maxQ, q.length);
// Trie node constructor
function Node() {
# Post-hoc Analyzer Agent
Analyze blind comparison results to understand WHY the winner won and generate improvement suggestions.
## Role
After the blind comparator determines a winner, the Post-hoc Analyzer "unblids" the results by examining the skills and transcripts. The goal is to extract actionable insights: what made the winner better, and how can the loser be improved?
## Inputs
You receive these parameters in your prompt:
- **winner**: "A" or "B" (from blind comparison)!PWL]h]u}8moL-8/**
* @param {string} word
* @return {number}
*/
var numberOfSpecialChars = function(word) {
// first[c] = first index (0-based) where char c appears
// last[c] = last index (0-based) where char c appears
const first = Array(128).fill(-1);
const last = Array(128).fill(-1);
// One pass: record first & last positions for every character
for (let i = 0; i < word.length; i++) {
const code = word.charCodeAt(i);
if (first[code] === -1) first[code] = i;
https://docs.npmjs.com/about-semantic-versioning// test.describe.configure({ mode: 'serial' });
// https://playwright.dev/docs/test-parallel#serial-mode
import { test, type Page } from '@playwright/test';
// Annotate entire file as serial.
test.describe.configure({ mode: 'serial' });
let page: Page;
test.beforeAll(async ({ browser }) => {
page = await browser.newPage();
});
test.afterAll(async () => {
await page.close();
});
test('runs first', async () => {
await page.goto('https://playwright.dev/');
});
test('runs second', async We would like to inform you that the description box size in the widget form can be increased by using Custom JS code. Kindly add the Custom JS code accordingly so that the description box length/size can be increased based on your requirement.
if(document.querySelector('#description_wrapper')) {
document.querySelector('#description_wrapper').querySelector('textarea').maxLength = 2000;
}
https://support.bolddesk.com/kb/article/17029/how-can-i-increase-description-field-length-in-web-f# Écosystème CLI Snowflake — carte synthétique
> **TL;DR** : utilise `snow` (Snowflake CLI) comme couteau suisse moderne. Évite `snowsql` (legacy). Garde `snowcd` sous la main pour les debugs réseau corpo. Les autres outils (Snowpark, dbt-snowflake, snowflake-labs-mcp) ne sont **pas** des CLI, mais s'appuient tous sur le même socle Python.
---
## Carte d'ensemble
```
┌─────────────────────────────┐
│ snowflake-connector-python │ ← socle commun moderne
# Tutorial Snowflake MCP avec GitHub Copilot — du quickstart à l'avancé
Tutorial pas-à-pas pour démarrer avec **Snowflake-Labs/mcp** (l'implémentation open-source officielle, qui tourne localement) depuis **VS Code + GitHub Copilot Agent Mode**. On part de zéro et on monte en complexité par paliers, avec des checkpoints à chaque niveau.
> **Note** : ce tutorial cible le serveur **local** (`uvx snowflake-labs-mcp`). Pour la version hébergée Snowflake-managed MCP server (GA novembre 2025), la mi# MCP Servers dans GitHub Copilot (VS Code) — guide synthétique
## Philosophie de l'outil
GitHub Copilot adopte une approche **UI-first** : la majorité des opérations passent par la **Command Palette** (`Ctrl+Shift+P`) ou par la **vue Extensions**. Les fichiers de configuration (`mcp.json`) restent éditables à la main, mais l'IDE expose toujours une action graphique équivalente.
**Deux portées (scopes) seulement :**
| Scope | Fichier | Utilité |
|---|---|---|
| **Workspace** | `.vscode/mcp.j# MCP Servers dans Claude Code — guide synthétique
## Philosophie de l'outil
Claude Code adopte une approche **CLI-first** : toute la gestion passe par la sous-commande `claude mcp`, complétée par la slash-command `/mcp` à l'intérieur d'une session. Pas d'interface graphique : tout est explicite et scriptable.
**Trois portées (scopes), à choisir explicitement à l'ajout :**
| Scope | Flag | Fichier | Utilité |
|---|---|---|---|
| **local** (défaut) | `-s local` (implicite) | `~/.claude.json`,# Snowflake MCP : `managed` vs `Snowflake-Labs/mcp`
Référence synthétique distinguant les **deux produits MCP** estampillés Snowflake. Confusion fréquente parce qu'ils partagent le nom et l'éditeur mais ciblent des usages opposés.
## En une phrase
- **Snowflake-managed MCP server** = produit Snowflake hébergé, créé comme objet SQL, exposé en HTTPS authentifié OAuth → cible **production entreprise**.
- **Snowflake-Labs/mcp** = implémentation open-source à lancer localement (`uvx`), configurée Select * from users where truesk-lm-HJPYSCyI:VZ3n8TyEq0i8ZrpJJrlf// *** CONSTANTS *** //
const dxFolderName = "— DX —";
const boomTrackName = "BOOM";
const lavTrackName = "LAV";
const lavFaderLevel = "-8.0";
// *** FUNCTIONS *** //
function activateProTools() {
sf.ui.proTools.appActivateMainWindow();
sf.ui.proTools.appWaitForActive();
}
function changeTrackHeight() {
if (sf.ui.useSfx) sf.ui.useSfx();
if (!sf.ui.proTools.isRunning) throw "Pro Tools is not running";
function setTrackHeight({ trackSize, scope = "selected" }) {
const trackOptions