Create .claude/hooks/block-git-operations.sh and register it in settings.json.
Add to .claude/settings.json:
"hooks": {| name | description |
|---|---|
codex |
Use when the user asks to run Codex CLI (codex exec, codex resume) or references OpenAI Codex for code analysis, refactoring, or automated editing |
AskUserQuestion) which model to run (gpt-5.2-codex or gpt-5.2) AND which reasoning effort to use (xhigh, high, medium, or low) in a single prompt with two questions.| name | description |
|---|---|
go-networking |
Go networking performance patterns and best practices. Use when optimizing network I/O, building high-performance servers, managing connections, tuning TCP/HTTP/gRPC, or diagnosing networking issues in Go applications. |
Comprehensive assistance with go-networking development, generated from official documentation.
| name | description |
|---|---|
go-performance |
Go performance optimization patterns and best practices. Use when optimizing Go code, reducing memory allocations, improving GC behavior, tuning concurrency, or diagnosing performance issues in Go applications. |
Comprehensive assistance with go-performance development, generated from official documentation.
| // | |
| // <appname>-Bridging-Header.h <----- replace the app name with your app's name | |
| // <appname> | |
| // | |
| // Created by Efstathios Ntonas on 2/2/24. | |
| // | |
| #ifndef <appname>_Bridging_Header_h | |
| #define <appname>_Bridging_Header_h |
| import AudioRecorderPlayer, { PlayBackType } from "react-native-audio-recorder-player"; | |
| import { isIOS } from "utils/utils"; | |
| type Callback = (args: { data?: PlayBackType; status: AudioStatus }) => void; | |
| type Path = string | undefined; | |
| export enum AudioStatus { | |
| PAUSED = "PAUSED", | |
| PLAYING = "PLAYING", | |
| RESUMED = "RESUMED", |
| import React, { memo, ReactNode } from "react"; | |
| import { LayoutChangeEvent, StyleProp, StyleSheet, ViewStyle } from "react-native"; | |
| import Animated from "react-native-reanimated"; | |
| import isEqual from "react-fast-compare"; | |
| import type { State } from "./types"; | |
| type Props = { | |
| animatedHeight: any; | |
| children: ReactNode; |
| const locationOptions: LocationOptions = { | |
| accuracy: LocationAccuracy.Balanced, | |
| distanceInterval: 250 | |
| }; | |
| const lastKnownLocationOptions: LocationLastKnownOptions = { | |
| maxAge: 60000, | |
| requiredAccuracy: 1000 | |
| }; |
| import React, { memo, useMemo } from "react"; | |
| import { Platform, StyleSheet, View } from "react-native"; | |
| import Svg, { Path } from "react-native-svg"; | |
| import { moderateScale } from "react-native-size-matters"; | |
| import { useStyle } from "react-native-style-utilities"; | |
| import useThemeContext from "@themes/themeContext"; | |
| import { Chat_Message } from "@generated/graphql"; | |
| import { currentUser } from "@functions/auth"; |
| import React, {FC} from 'react'; | |
| import {Dimensions, StyleSheet, View} from 'react-native'; | |
| import { | |
| Gesture, | |
| GestureDetector, | |
| GestureHandlerRootView, | |
| } from 'react-native-gesture-handler'; | |
| import Animated, { | |
| Easing, | |
| interpolate, |