achmadya.dev
Terbuka untuk pekerjaan
COMMAND PALETTE

Cari sesuatu

10 hasilGunakan tautan di bawah untuk membuka halaman
Proyek
proyekMandor PlateA reusable SaaS boilerplate with an API, dashboard, database, and tests in one monorepo.proyekMCP QueryA suite of MCP servers for querying Excel and four databases over npx and stdio, with a small runtime and explicit error handling.
Tulisan
TulisanRecording Finances in a Spreadsheet with HermesHow Hermes maps messages to cashflow rules, prepares reviewable drafts, requests confirmation, and writes and verifies spreadsheet transactions.TulisanOrganizing Coding Workflows with Hermes ProjectsHow to connect a Git repository to a Hermes Project, prepare its runtime and dependencies, and run validation from consistent working context.TulisanHow I render Markdown and Mermaid in ReactThe rendering pipeline I use for safe Markdown, highlighted code, and responsive Mermaid diagrams.TulisanDesigning an MCP tool call I can traceHow I separate protocol handling, database adapters, and public errors in a small MCP query server.TulisanInstalling Hermes Agent and Understanding Its ArchitectureA complete guide to installing Hermes Agent and understanding profiles, skills, tools, gateway, schedules, Kanban, memory, and agent architecture.TulisanA monorepo as a context boundary for AIWhat changed when I put contracts, backend, frontend, and tests in one workspace for AI-assisted development.TulisanLearning Microsoft SQL Server and its backup mechanismNotes on learning Microsoft SQL Server through an online-store case: from containers and queries to recovery models, backup chains, and restore operations.TulisanBuilding CCTV Live Streaming and Playback on the Web with FFmpegR&D notes on taking Hikvision video from RTSP to the browser, including H.265 transcoding, MPEG-TS, WebSocket delivery, and time-based playback.
~/tulisan / hermes-workspace

Menata Workflow Coding dengan Hermes Project

HermesAI agentsdesktopGitcoding workflow

Mengapa Hermes Project dibutuhkan?

Hermes dapat membaca file, menjalankan perintah, dan mengubah kode. Sebelum bekerja, Hermes tetap perlu mengetahui repository, branch, aturan, dan command validasi yang benar.

Hermes Project menyediakan konteks tersebut melalui satu folder utama. Ketika Project aktif, sesi Hermes, penjelajah file, terminal, dan pemeriksaan Git menggunakan folder yang sama.

Bentuk akhirnya:

Hermes Project
  → folder repository
  → file dan aturan project
  → terminal
  → status dan diff Git
  → command validasi

Project tidak menggantikan Git atau package manager. Project mengikat sesi Hermes ke tempat kerja yang benar.

Menyiapkan repository lokal

Repository dapat diambil melalui GitHub CLI atau Git biasa:

gh repo clone <owner>/<repository> ./<repository>

atau:

git clone https://github.com/<owner>/<repository>.git

Setelah clone selesai, periksa identitas repository:

git status --short --branch
git remote -v
git log -1 --oneline --decorate

Pemeriksaan tersebut memastikan:

  • branch aktif sudah diketahui;
  • upstream mengarah ke remote yang benar;
  • working tree tidak menyimpan perubahan yang tidak disengaja;
  • commit dasar dapat dilaporkan sebelum pekerjaan dimulai.

Folder repository dapat disimpan di lokasi mana pun yang mudah dikelola, misalnya:

~/projects/<repository>

atau:

~/.hermes/projects/<repository>

Membuat Hermes Project

Di Hermes Desktop, buat Project baru dan pilih folder repository sebagai primary folder.

Name: <nama-project>
Primary folder: /path/to/<repository>

Project yang aktif memindahkan konteks sesi ke folder tersebut. Hermes kemudian dapat membaca file project dan menjalankan command tanpa meminta path repository pada setiap task.

Project menyimpan hubungan dengan folder kerja, bukan salinan source code:

Hermes Project
  → nama Project
  → primary folder
  → hubungan dengan sesi

Git repository
  → source code
  → branch dan commit
  → remote

Jika folder repository dipindahkan, primary folder Project perlu diperbarui.

Mengenali runtime dan package manager

Sebelum memasang dependensi, periksa manifest dan lockfile repository.

FileTool yang biasanya digunakan
bun.lockBun
package-lock.jsonnpm
pnpm-lock.yamlpnpm
yarn.lockYarn
pyproject.tomluv, Poetry, atau pip
Cargo.tomlCargo
go.modGo modules

Gunakan lockfile sebagai acuan. Contoh instalasi yang menjaga resolusi dependency:

bun install --frozen-lockfile
npm ci
pnpm install --frozen-lockfile
yarn install --frozen-lockfile

Jalankan hanya command yang sesuai dengan repository. README dan script project tetap menjadi sumber utama untuk menentukan langkah setup.

Memberi konteks project kepada Hermes

Hermes perlu memahami aturan repository selain lokasinya. Aturan dapat ditulis dalam file seperti:

.hermes.md
AGENTS.md
CLAUDE.md
.cursorrules
.cursor/rules/*.mdc

Isi yang berguna antara lain:

# Aturan project

- Gunakan package manager yang sesuai dengan lockfile.
- Baca file terkait sebelum mengubah kode.
- Jangan menyentuh file kredensial.
- Jalankan lint, type-check, test, dan build yang tersedia.
- Periksa diff sebelum membuat commit.

Aturan project mengurangi asumsi, tetapi tidak menggantikan validasi. Hermes tetap perlu menjalankan command dan melaporkan hasil sebenarnya.

Menentukan command validasi

Script validasi biasanya berada di manifest project atau README.

Untuk project JavaScript atau TypeScript, contoh yang umum:

bun run check
bun run tsc
bun run test
bun run build

Nama script dapat berbeda. Beberapa repository menggunakan lint, typecheck, atau test:unit. Hermes perlu membaca package.json sebelum memilih command.

Build juga dapat membutuhkan environment variable. Jika proses berhenti karena variable belum tersedia, baca pesan error dan dokumentasi project. Gunakan nilai valid untuk lingkungan pengujian tanpa menaruh secret di repository.

Alur kerja coding di dalam Project

Hubungan antarbagian dapat digambarkan seperti ini:

Merender diagram...

Saat menerima task, Hermes bekerja melalui urutan berikut:

  1. memastikan Project dan repository yang aktif;
  2. memeriksa branch serta status Git;
  3. membaca aturan dan file yang relevan;
  4. membuat perubahan sesuai ruang lingkup;
  5. menjalankan validasi repository;
  6. memeriksa diff dan melaporkan hasilnya.

Urutan tersebut membuat lokasi kerja, aturan, perubahan, dan bukti validasi tetap berada dalam satu konteks.

Batas antara Project dan repository

Hermes Project memudahkan navigasi dan menjaga konteks sesi. Git tetap menjadi sumber history dan sinkronisasi.

Project tidak otomatis:

  • membuat commit;
  • memilih branch yang aman;
  • menyelesaikan konflik;
  • memasang dependency yang belum diminta;
  • menentukan bahwa build yang lulus sudah benar secara produk;
  • mendorong perubahan ke remote tanpa instruksi.

Keputusan tersebut tetap mengikuti aturan repository dan persetujuan pengguna.

Hasil setup yang diharapkan

Setup berhasil ketika Hermes dapat membuka Project, mengenali repository, menjalankan command yang sesuai, dan menunjukkan hasil Git serta validasi tanpa menebak lokasi kerja.

Dengan struktur ini, pola yang sama dapat digunakan untuk repository Bun, npm, Python, Rust, Go, atau stack lain. Hal yang berubah adalah command project; peran Hermes Project sebagai konteks kerja tetap sama.