From b6229b2646bd9eb04b9e98dab6a1948bdce5249b Mon Sep 17 00:00:00 2001 From: Oleksander Piskun Date: Thu, 19 Feb 2026 19:46:42 +0200 Subject: [PATCH] Add AI assistant workflows: Mother & Father personas MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Mother (@mother): nurturing teacher — patient, encouraging, explains context - Father (@father): demanding standards — strict, uncompromising on quality - Father also runs automatic code review on all PRs --- .github/workflows/father.yml | 47 ++++++++++++++++++++++++++++++++++++ .github/workflows/mother.yml | 47 ++++++++++++++++++++++++++++++++++++ 2 files changed, 94 insertions(+) create mode 100644 .github/workflows/father.yml create mode 100644 .github/workflows/mother.yml diff --git a/.github/workflows/father.yml b/.github/workflows/father.yml new file mode 100644 index 00000000..1159333e --- /dev/null +++ b/.github/workflows/father.yml @@ -0,0 +1,47 @@ +name: Father + +on: + issue_comment: + types: [created] + pull_request_review_comment: + types: [created] + issues: + types: [opened, assigned] + pull_request_review: + types: [submitted] + +jobs: + father: + if: | + (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@father')) || + (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@father')) || + (github.event_name == 'pull_request_review' && contains(github.event.review.body, '@father')) || + (github.event_name == 'issues' && (contains(github.event.issue.body, '@father') || contains(github.event.issue.title, '@father'))) + runs-on: ubuntu-latest + permissions: + contents: read + pull-requests: read + issues: read + id-token: write + actions: read + steps: + - name: Checkout repository + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + with: + fetch-depth: 1 + + - name: Run Father + id: father + uses: anthropics/claude-code-action@0cf5eeec4f908121edd03a81411b55485994f8d3 # v1 + with: + claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }} + additional_permissions: | + actions: read + prompt: | + You are Father — strict, demanding, and uncompromising on quality. + You enforce the highest coding standards with zero tolerance for mediocrity. + Never accept "good enough" — push for excellence in every line. + Point out every deviation from best practices directly and bluntly. + Do not sugarcoat. If the code is subpar, say so and explain what excellence looks like. + Demand proper architecture, thorough tests, clean abstractions, and clear naming. + No shortcuts. No excuses. Raise the bar. diff --git a/.github/workflows/mother.yml b/.github/workflows/mother.yml new file mode 100644 index 00000000..a5c0f7d5 --- /dev/null +++ b/.github/workflows/mother.yml @@ -0,0 +1,47 @@ +name: Mother + +on: + issue_comment: + types: [created] + pull_request_review_comment: + types: [created] + issues: + types: [opened, assigned] + pull_request_review: + types: [submitted] + +jobs: + mother: + if: | + (github.event_name == 'issue_comment' && contains(github.event.comment.body, '@mother')) || + (github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@mother')) || + (github.event_name == 'pull_request_review' && contains(github.event.review.body, '@mother')) || + (github.event_name == 'issues' && (contains(github.event.issue.body, '@mother') || contains(github.event.issue.title, '@mother'))) + runs-on: ubuntu-latest + permissions: + contents: read + pull-requests: read + issues: read + id-token: write + actions: read + steps: + - name: Checkout repository + uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2 + with: + fetch-depth: 1 + + - name: Run Mother + id: mother + uses: anthropics/claude-code-action@0cf5eeec4f908121edd03a81411b55485994f8d3 # v1 + with: + claude_code_oauth_token: ${{ secrets.CLAUDE_CODE_OAUTH_TOKEN }} + additional_permissions: | + actions: read + prompt: | + You are Mother — a nurturing, patient teacher. + Always start by acknowledging what was done well before suggesting improvements. + Explain everything step by step with full context — help the developer understand WHY, + not just what to change. Be encouraging and supportive while remaining technically precise. + When pointing out issues, frame them as learning opportunities. + Guide gently: "Have you considered…", "A nice approach here would be…". + Your goal is to help developers grow, not just to fix code.