Skip to content

Instantly share code, notes, and snippets.

View dai's full-sized avatar
:octocat:
still Catch it Up.

dai dai

:octocat:
still Catch it Up.
View GitHub Profile
@dai
dai / gemini-cli-ja.md
Last active June 26, 2025 07:16 — forked from simonw/gemini-cli.md
System prompt for Gemini CLI, see https://simonwillison.net/2025/Jun/25/gemini-cli/

あなたはソフトウェアエンジニアリングタスクに特化したインタラクティブCLIエージェントです。あなたの主な目標は、以下の指示に厳密に従い、利用可能なツールを活用しながら、ユーザーを安全かつ効率的に支援することです。

コア原則

  • 規約: コードの読み書き時は、既存プロジェクトの規約を厳守してください。周辺のコード、テスト、設定をまず分析してください。
  • ライブラリ/フレームワーク: ライブラリやフレームワークが利用可能・適切だと決めつけないでください。プロジェクト内での使用実績(インポート、設定ファイル例: 'package.json', 'Cargo.toml', 'requirements.txt', 'build.gradle' など、または隣接ファイル)を確認してから使用してください。
  • スタイル&構造: 既存コードのスタイル(フォーマット、命名)、構造、フレームワーク選択、型付け、アーキテクチャパターンを模倣してください。
  • イディオム的変更: 編集時はローカルコンテキスト(インポート、関数/クラス)を理解し、自然かつイディオム的に統合されるようにしてください。
  • コメント: コードコメントは最小限に。特に複雑なロジックの理由に焦点を当ててください(何をではなくなぜ)。必要性が高い場合やユーザーから要望があった場合のみ追加してください。自分が変更していないコードのコメントは編集しないでください。ユーザーへの説明や変更内容の要約をコメントに書かないでください
  • 積極性: ユーザーの依頼には、合理的かつ直接的に関連するフォローアップも含めて徹底的に対応してください。

Delayed Open Source Publication:

歴史的および現在の慣行の調査

セス・シェーン、ジェームズ・ヴァシル、カール・フォーゲル


@dai
dai / Microsoft.Powershell_profile.ps1
Created March 5, 2024 02:28 — forked from Olwiba/Microsoft.Powershell_profile.ps1
Get-Json Property - Powershell ⚡
# catjp - Concatenate JSON property
# Made with 💖 - Olwiba
function Get-JsonProperty {
param (
[Parameter(Mandatory=$true)]
[string]$Path,
[Parameter(Mandatory=$true)]
[string]$Property
@dai
dai / iac_semver.md
Created July 21, 2022 02:20 — forked from mrcrilly/iac_semver.md
A better way of version controlling IAC

Semantic Versioning for IAC - iacver

When it comes to Infrastructure As Code, the software versioning system known as Semantic Versioning (semver.org) works from an API perspective but falls short elsewhere.

In short a semver is broken down into three "octets" and optional, additional information tagged to the end. Here are a few examples: v1.0.1, v3.1.1, v1.15.0-4. Each of these is a valid semver.

If we take the first example - v1.0.1 - and change the first octet, 1, to 2, we're saying the following:

There has been a change to this code and that change is not compatible with how you're using v1.0.1. The change is a breaking change. You should take care to introduce version v2.0.0 into your code or your environment.

#!/usr/bin/env perl
use strict;
use warnings;
use Pod::Usage;
use Text::Markdown 'markdown';
use HTML::TreeBuilder;
use List::Util 'max';
use Encode;
@dai
dai / index.html
Created November 6, 2012 01:51 — forked from abraham/index.html
ADN Widgets alpha install instructions
<html>
<head>
<!-- ADN Widgets alpha -->
<!-- Sign up for alpha deprecation announcements: https://groups.google.com/forum/#!forum/adn-widgets-announce -->
<!-- To install: include script on your web site and add the <a> tag where you want the follow button -->
<!-- Tested to work in the latest Chrome, Firefox, Safari, and IE9 -->
<!-- ADN Widgets: https://alpha.app.net/widgets -->
<script async src='https://adnwidgets.herokuapp.com/alpha.js'></script>
</head>
@dai
dai / README.txt
Created March 2, 2009 15:43 — forked from rmm5t/README.md
You can represent time statements in most western languages where
a prefix and/or suffix is used.
The default case is to use suffix only (as in English), which you
do by providing the `suffixAgo` and `suffixFromNow` settings in
the strings hash (earlier versions of timeago used the deprecated
`ago` and `fromNow` options). If present, they are used.
2 minutes [suffixAgo]
2 minutes [suffixFromNow]