**اگه تغییراتی که میخواین توی یه کلاس انجام بدین، کم باشه، میتونین این تغییرات رو توی preamble فایل اصلیتون قرار بدین. در ضمن، اگه حفظ نظم فایل اصلیتون براتون اهمیت داره، میتونین مثل
قالب پایاننامه من، یه فایل تک مثل commands درست کنین و این تغییرات رو توش قرار بدین و بعدش اونو با دستور input توی فایل اصلیتون فراخوانی کنین. نکتهای که باید بهش دقت کنین اینه که اگه دستوری توی یه کلاس با \newcommad شروع شده، هنگام تغییر باید اونو به \renewcommand تغییر بدین چون در غیر این صورت، با خطای «این دستور از قبل تعریف شده است» مواجه میشین. اما دستوراتی که با \def شروع میشن، اینطور نیستن. چون اگه دستوری رو با \def تعریف کنین، TeX بدون توجه به اینکه آیا این دستور از قبل وجود داشته یا نه، تعریف شمارو جایگزین تعریف قبل میکنه. به عبارت دیگه، تک دیگه اهمیت نمیده که آیا دستور شما از قبل تعریف شده یا نه و بنابراین دیگه با خطای بالا مواجه نمیشین.
نکته دیگهای که باید بهش توجه کنین اینه که اگه میخواین دستوراتی که داخلشون از کاراکتر @ استفاده شده، رو تغییر بدین، باید اونا رو بین دو دستور
\makeatletter
...
\makeatother
قرار بدین. مثلاً در مورد تغییرات شما، چون از کاراکتر @ استفاده شده، باید اولش دستور \makeatletter و آخرش، دستور \makeatother رو قرار بدین و حالا همه رو قبل از \begin{document} قرار بدین. در ضمن یادتون نره که دستور \newcommand رو هم به \renewcommand تغییر بدین.
** اما اگه تغییراتی که میخواین توی یه کلاس انجام بدین، زیاد هستش (مثلاً ۵۰٪ به بالا)، به نظر من بهتره که قبل از هر چی، فایل کلاس رو داخل پوشهای که فایل اصلیتون قرار داره، کپی کنی و بعدش تغییرات رو توی همین فایل انجام بدی و بعدش (بخاطر رعایت کردن قوانین مجوز LPPL) اسمشو مثلاً به myreport تغییر بدین و بعدش توی فایل اصلی بجای دستور \documentclass{report} از دستور \documentclass{myreport} استفاده کنین.
نکته دیگهای که بد نیست بدونین اینه که زمانی که از کلاس یا بسته خاصی توی فایل اصلیتون استفاده میکنین، TeX ابتدا توی همون پوشه خودتون دنبال فایل اون کلاس یا بسته میگرده و اگه پیداش نکنه، میره سراغ پوشهای که توزیع تکتون اونجا نصب شده. ضمناً همیشه اولویت با پوشه خودتون هستش. یعنی اگه توی پوشه خودتون و توی پوشه توزیع تکتون، یه فایل همنام با پسوند sty وجود داشته باشه، TeX فقط محتویات فایلی که توی پوشه خودتون هستش رو میخونه و کاری با فایل داخل توزیع تک نداره.
امیدوارم که جواب سوالتون رو گرفته باشین.